Ich habe ja schon das ein oder andere Versucht...
Leider basiert alles auf .click(), daher auch die Probleme mit der PiroBox.
Es gibt ein Auf- und Zuklappbares Menü und deren Links im Menü UND Links im neu geladenen Content-div-Container (Mainpage). Die Links im Content-div sollen ja wiederrum in den Content-div geladen werden (Daher ein mal nur .click und ein mal als Live()-Variante.
Desweiteren habe ich versucht das ganze ein wenig mehr einzuschränken durch die Klassifizierung .ilink (Interner-Link), aber nützt alles nichts!
Code:
<script type="text/javascript">
jQuery(document).ready(function(){
var hash = window.location.hash.substr(1);
var href = $('a').each(function(){
var href = $(this).attr('href');
if(hash==href.substr(0,href.length-4)){
var toLoad = hash+'.php';
$('#content').load(toLoad);
}
});
// Menu toggle
$('.toggle').prev('li').click(function(){
$(this).next().toggle('slow');
return false;
}).next().hide('slow');
// Clicks aus dem Menü
$('.ilink').click(function(){
var toLoad = $( this ).attr('href')+' #content';
$('#content').hide(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;
});
// Clicks aus dem neu geladenen Content
$('.ilink').live("click", function(){
var toLoad = $( this ).attr('href')+' #content';
$('#content').hide(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;
});
});
</script>