function show()
keinnachweis
- javascript
0 gast42
hi,
wir haben auf einer seite eine liste von dokumente in zeilen. und das wird langsam unübersichtlich. wir haben jetzt gruppen der dokumente in
<span id="name"></span>
eingeschlossen.
die auswahl erfolgt über eine liste:
<a href="#" onclick="on_menu_selected('all')"> name </a>
das script heißt:
<script language="JavaScript" type="text/JavaScript">
<!--
function show(ele) {
var srcElement = document.getElementById(ele);
if(srcElement != null) {
if(srcElement.style.display != "block") {
srcElement.style.display='block';
}
}
}
function hide(ele) {
var srcElement = document.getElementById(ele);
if(srcElement != null) {
srcElement.style.display= 'none';
}
}
function on_menu_selected(name) {
if(name == "all"){
show("name");
}
else{
hide("name");
}
}
//-->
</script>
das funktioniert. nun wollen wir aber nicht gruppierte zeilen kennzeichnen, sonder wollen jedes beliegige zeile kennzeichnen.
wenn man aber mehrere zeilen, die nicht aufeinanderfolgen, mit <span id="name"> kennzeichnet, wird immer nur das erste aufgelistet.
gibt es da eine möglichkeit? über eine repeat-struktur?
für eine hilfe wäre ich sehr dankbar.
gruß micha
wenn man aber mehrere zeilen, die nicht aufeinanderfolgen, mit <span id="name"> kennzeichnet, wird immer nur das erste aufgelistet.
eine id ist - daher der Name - einmalig, also reicht es dem Browser, wenn er sie einmal gefunden hat
Wenn mehrere Elemente gleiche Eigenschaften haben sollen, gibt es dafür class
<span class="bla">mmm</span>
Du kannst dann in aller Ruhe alle span durchgehen und schauen, ob sie dieser Klasse angehören:
var allespan=document.getElementsByTagName("span");
for (var s=0;s<allespan.length;s++) {
if (allespan[s].className=="bla") mache irgendwas mit allespan[s]
}
vielen dank für die sachnelle reaktion: ich werde es so probieren. hier noch unsere seite mit der liste: http://www.keinnachweis.de
hi,
habe nun endlich das script zusammen gefrickelt. es funtioniert. bin für jeden verbesserungsvorschlag dankbar!
function switchNotes(titel){
hideAllNotes();
showNotes(titel);
}
function hideAllNotes(){
var allSpans = document.getElementsByTagName('span');
for (var i = 0;i < allSpans.length; i++){
var thisSpan = allSpans[i];
thisSpan.style.display = 'none';
}
}
function showAllNotes(){
var allSpans = document.getElementsByTagName('span');
for (var i = 0;i < allSpans.length; i++){
var thisSpan = allSpans[i];
thisSpan.style.display = 'block';
}
}
function showNotes(titel) {
var allSpans = document.getElementsByTagName('span');
for (var i = 0;i < allSpans.length; i++){
var thisSpan = allSpans[i];
if (thisSpan.className && thisSpan.className == titel){
thisSpan.style.display = 'block';
}
}
}