Ik maak gebruik van een aantal Javascripts welke ervoor zorgen dat ik leuke menus heb. Nu werkt alles, maar er is toch een 'script error', zie:



...ik klik dan op 'yes' en krijg vervolgens de volgende boodschap:



...wederom klik ik op 'yes'.

...nu is de website gewoon in beeld en alles lijkt te werken.

Deze error-boodschappen komen alleen tevoorschijn in bv. IETester en als je er echt om gaat vragen en naar gaat zoeken...bezoekers van de uiteindelijke website zullen dit hoogstwaarschijnlijk dus niet eens zien.

Toch los ik dit probleem graag op! Potdorie.

Er word gesproken over 'Line: 3' en ''document.GetElementById[...] is leeg of geen object'...

Welke 'Line: 3'? Dat is een <meta> tag?! In de bron van de gehele pagina natuurlijk...welk Javascript word er nu bedoeld? Er staan er een aantal in de <head> welke verwijzen naar Javascripts in een folder genaamd 'javascripts'.

Kortom: ik snap niet hoe ik dit oplos.
betekend gewoon dat het element dat jij oproept niet bestaat.

veel gemaakte fout voorbeeld:

<input type="text" value="lolcats" name="deze_input" />


die je dan oproept met

document.getElementById('deze_input')

terwijl je op id moet koppelen, niet op name. Maak dus

<input type="text" value="lolcats" name="deze_input" id="deze_input" />

Als het de fout is die wes zegt, dan moet die ook in Firebug te zien zijn. Kan je anders de bron online zetten? Dan kunnen we meekijken.
Ik heb de code van het dropdown Accordion menu alhier:

<ul class="nav">
<li><a href="#" class="hoofdonderwerp"><b>&nbsp;</b><span>HOOFDONDERWERP</span><!--[if IE 7]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]--><div>&nbsp;</div>
<ul>
<li><a href="#1">Sub-optie#01</a></li>
<li><a href="#2">Sub-optie#02</a></li>
<li><a href="#3">Sub-optie#03</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
</ul>


en in de <head> roep ik de volgende Javascripts aan:

<script type="text/javascript" src="javascript/prototype.js"></script>
<script type="text/javascript" src="javascript/effects.js"></script>
<script type="text/javascript" src="javascript/accordion.js"></script>
<script type="text/javascript" src="javascript/load_accordion.js"></script>


...deze Javascripts staan ook hier voor jullie gemak:
prototype.js
effects.js
accordion.js
load_accordion.js

...de 'load_accordion.js' stond in het originele script 'los' in de <head> op de HTML pagina, hier heb ik een .js bestandje van gemaakt.

Dit terug plaatsen in de <head> is niet de oplossing.

Het is mij echt een raadsel...Als jullie even zouden willen kijken graag.

Alvast bedankt!


Wow, wat veel code voor zoiets simpels. :/

jQuery

$(document).ready(function(){

	$(".accordion h3:first").addClass("active");
	$(".accordion p:not(:first)").hide();

	$(".accordion h3").click(function(){

	  $(this).next("p").slideToggle("slow").siblings("p:visible").slideUp("slow");
	  $(this).toggleClass("active");
	  $(this).siblings("h3").removeClass("active");

	});

});
Demo
Helaas ken ik Prototype niet, dus kan ik je daar niet mee helpen.
Hey Mitchell,

Tsja....jammer hoor, deze werkt prima en veel 'soepeler' dan die in jouw demo.

Waar ik achter ben gekomen, doordat Elwin 'Firebug' noemde ben ik meteen effies gaan Firebuggen, waarom ik daar zelf niet aan denk?!?! en Firebug heeft het over het volgende:

Error: "throw $continue" is deprecated, use "return" instead

dit staat op regel 443 van de hier eerder genoemde prototype.js.

OKE! Dat is het dus...maar hoe vevang ik die '$continue' voor een geaccepteerde 'return'?

Zegt me helemaal niets?!
Waarom heb je niet de laatste versie van prototype?
Dat voorbeeld van Mitchell is inderdaad nogal schokkerig. Kijk anders eens naar dit voorbeeld, die is toch heel soepel? (Die werkt hier iig beter dan dit voorbeeld met prototype.)
Hey Karl,

Ik zag al dat er inmiddels versie 1.6 van Prototype is...en dat het script dat ik gebruik een versie 1.5 nog wat is.

Maar...als ik de laatste versie van prototype.js upload werkt het niet meer zoals voorheen. Hoe los ik dit dan op?

P.S. Ik los liever het probleem even op als dat kan....want om nu het gehele menu om te gaan hangen in een ander script heb ik weinig zin in.
Is er geen oplossing voor dit specifieke geval?
Karl schreef op 18.09.2009 14:09
Dat voorbeeld van Mitchell is inderdaad nogal schokkerig. Kijk anders eens naar dit voorbeeld, die is toch heel soepel?
Ik hou er niet van om vervolgens ook nog eens heel het jQuery UI library er bij in te laden. Kost alleen laad tijd.

@ TS
Heeft prototype/maker van jou script niet een forum/contact formulier? Neem even contact op en vraag het aan de specialisten.

Reageren