Wenn das Problem bereits eingegrenzt ist, ist debugging mittels Kontrollausgaben absolut hirnverbrannt.
Ja, sowas in der Art hab ich mir auch gedacht :-)
Jedenfalls lief es alleine mit der .live()-Variante auch nicht(!)
(Code anschauen! (unten))
Wer genau hin schaut, erkennt, dass ich 2 mal den selben Code mit 2 unterschiedlichen Handlern "missbrauche", aber so läufts!
der .live()-Handler greift im <div id="content">-Bereich und der .click()-Handler greift im Menü. Ein Problem was dazu kommt ist, dass im Menü noch ein Toggle-Handler ein wörtchen mitzureden hat.
Daher auch mal mit return false; und mal ohen!
Denn im Menü bzw beim toggle-Handler steht bereits ein return false; im code. (Den rest muss man nicht unbedingt verstehen!)
Eine letzte Frage wäre: Kann ich 2 Handler irgendwie Kombinieren?
Und: Läuft das dann auch :-D ?
Bernd
$('a').live("click", function(){
//alert("a click");
var toLoad = $( this ).attr('href')+' #content';
$('#content').hide('normal',loadContent);
//$('#load').remove();
$('#wrapper').append('<span id="load">LOADING...</span>');
$('#load').show();
window.location.hash = $( this ).attr('href').substr(0,$( this ).attr('href').length-4);
function loadContent() {
$('#content').load(toLoad,'',showNewContent)
}
function showNewContent() {
$('#content').show(hideLoader);
}
function hideLoader() {
$('#load').hide();
}
return false;
});
$('a').click(function(){
//alert("a click by ");
var toLoad = $( this ).attr('href')+' #content';
$('#content').hide('normal',loadContent);
//$('#load').remove();
$('#wrapper').append('<span id="load">LOADING...</span>');
$('#load').show();
window.location.hash = $( this ).attr('href').substr(0,$( this ).attr('href').length-4);
function loadContent() {
$('#content').load(toLoad,'',showNewContent)
}
function showNewContent() {
$('#content').show(hideLoader);
}
function hideLoader() {
$('#load').hide();
}
//return false;
});