Hi,
.) Muss jeglicher Code innerhalb von
$(document).ready(function() {[/code]
und
});[/code]
stehen ?
nein. Aber es macht Sinn, Funktionsaufrufe, die Du früher z.B. im onload des body-tags stehen hattest dort zu notieren, den das stellt sicher, dass der Aufruf erst erfolgt wenn das DOM komplett geladen ist.
Warum sieht der Code nicht so aus:
$(document).ready(function() {
//irgendwas
});$("a").click(function() {
alert("!");
});
»»
wenn dann so:
function init_anker() {
$("a").click(function() {
alert("!");
});
}
$(document).ready(function() {
init_anker()
});
...schließlich will ich, dass die Messagebox jedesmal bei einem Klick auf ein <a> angezeigt wird und nicht nur wenn gerade das
Dokument fertig geladen wurde.
Genau das machst Du ja - aber das a-tag muss erst mal _da_ sein, bevor Du ihm einen eventhandler zuweisen kannst.
Meine Frage dazu: Wie könnte man realisieren, daß ein paar mal aus und eingeblendet wird, und erst dann der Link verfolgt wird.
indem Du die Aufrufe nicht gleichzeitig sondern nacheinander tätigst, dafür gibts die callback-Funktionalität:
$("div").hide("slow", function(){
$("div").show("slow", function(){
// usw
});
});
function()... wird als Parameter übergeben und erst nach Beendigung der Anim ausgeführt.
Gruesse, Joachim
Am Ende wird alles gut.