Javasricpt code beisst sich mit scriptacolous

JamesT

Erfahrenes Mitglied
Hallo zusammen,

ich benutze auf meiner Seite folgendes Javascript um einen bestimmten bereich per klick ein und auszublenden. Ich hab auf der seite mehrere Divs die aufgeklappt werden können.

Öffne ich den ersten und danach einen anderen schliesst sich der erste automatisch und der andere den ich angeklickt habe klappt auf. Dies macht folgendes Javascript:

Code:
	<script type="text/javascript">
		<!--
		function show(strID){
		  // Suchmuster für Klassenname (hier: toggle-info)
		  var strPattern = /\btoggle-info\b/;
		  var objStart = document.getElementById(strID);
		
		  var objTable = objStart.parentNode;
		
		  // Übergeordnetes Tabellenelement ermitteln
		  while(objTable.nodeName.toLowerCase() != "table"){
		  	objTable = objTable.parentNode;
		  }
		
		  // Alle DIVs innerhalb der Tabelle ermitteln
		  var arrDiv = objTable.getElementsByTagName("div");
		
		  // Alle DIVs durchlaufen
		  for(var i=0; i<arrDiv.length; i++){
		    // Falls es sich um ein Info-Div handelt
		    if((arrDiv[i].className.search(strPattern)!=-1)){
		      // Falls es sich um die gewünschte Info handelt
		      if(arrDiv[i].id == strID)
		        arrDiv[i].style.display = (arrDiv[i].style.display=="block")? "none" : "block";
		      else
		        arrDiv[i].style.display = "none";
		    }
		  }
		}
		//-->
	</script>

Für ein Autocomplete für Formularfelder, würde ich jetzt gern die Scriptacolous Bibliothek nutzen, allerdings funktioniert dann mein Javascript welches ich oben gepostet habe nicht mehr, und zwar in der Art, das die Divs nicht zuklappen wenn ich ein anderes öffne.

Kann ich das umgehen?

Das Autocomplete was ich nutzen will ist durch folgendes tutorial erstellt wurden: http://wiseguysonly.com/2006/04/14/ajax-autocompletion-for-the-impatient/

Kann ich evtl. die Javascript dateien die ich benötige (controls.js, effects.js, prototype.js und scriptaculous.js) so ausdünnen,
das nur die sachen drin stehen die ich für das autocomplete brauche? Weil diese JS dateien haben schon ne menge KB.

Grüße

Jamest
 
Zuletzt bearbeitet:
Hi,

also ausdünnen wirst du es wahrscheinlich nicht können. Das baut sehr aufeinander auf.

Ich verstehe ehrlich gesagt nicht, warum dieser Text nicht mit Scriptacolous funktionieren sollte (allerdings hast du auch keine konkrete Fehlermeldung gepostet).

Wenn du dich jetzt eh an Scriptacolous Tutorials machst, dann versuche doch einfach die obige Funktion neuer und besser mit Hilfe des Frameworks zu schreiben, es sind ja nur ien dutzend Zeilen Code.

Gruß

.:lay-z-cow:.
 
Hi,

eine Fehlermeldung gibt es nicht, der Fehler äußert sich einfach nur so, das alle versteckten Zeilen schon aufgeklappt sind und weder zu noch wieder aufgeklappt werden können.

Grüße

Jamest
 
Hi,

ich kann mir vorstellen, dass es mit dem Funktionsname show zu Komplikationen kommt. Hast du schon mal versucht, diesen umzubenennen - z.B. in show_ - das Umbenennen der Aufrufe nicht vergessen.

Ciao
Quaese
 

Neue Beiträge

Zurück