私のウェブサイトでは、以下に基づいてページ ナビゲーションを構築しますhashchange
。
var hashHome;
$(window).bind( 'hashchange', function(e) {
var homeClass = "home";
var url = $.param.fragment();
if($('#page-content').hasClass(homeClass)){
hashHome = $('#page-content').html();
}
if(url ==''){
//homepage with nothing(no hash)
if(!$('#page-content').hasClass(homeClass)){
//alert("load frim cache ->#"+url);
$('#page-content').addClass(homeClass);
$('#page-content').html(hashHome);
}
}else{
//go to some page
if($('#page-content').hasClass(homeClass))
$('#page-content').removeClass(homeClass);
initAction(url);
}
})
$(window).trigger( 'hashchange' );
サイトがホームページをロードすると、ホームページは に保存されhashHome
ます。ユーザーが別の場所に移動すると、のコンテンツinitAction(id)
全体$('#page-content')
が他のページのコンテンツに置き換えられます。ユーザーがホームに戻ると、保存されているホームを に復元し$('#page-content')
ます。
私の問題は、すべての jQuery がホームページで機能しなくなったことです。
私はlive()
すでに読んだことがありますが、それが機能するにはそのようなイベントが必要なようclick()
です。これを修正するにはどうすればよいですか?