还在学习基本的php& jquery,但有点想法:我有两页,第二页我有显示/隐藏DIV,这里是jsfiddle demo:
$('.navLink').on('click', function(e){
e.preventDefault();
var targetDiv = $($(this).attr('href'));
if(!targetDiv.is(':visible')){
$('.page').slideUp().delay(300);
targetDiv.slideDown();
}else{
$('.page').slideUp().delay(500);
} });
我希望从第一页(page1.html)到第二页(page2.html)有一个链接,所以使用像 page2.html#div1 这样的选项会打开选中的#div 。我试着用jsfiddle锻炼身体:
window.addEventListener("hashchange", function(){
var targetDiv = $(location.hash);
if(!targetDiv.is(':visible')){$('.page').slideUp();targetDiv.slideDown();}
else{$('.page').slideUp();} }, false);
但是如果你有一个链接到某个并且根本没有处理某些chrome版本的givitn,它就无法正常工作......
有更好的想法还是?
提前致谢!
答案 0 :(得分:1)
在可以调用它的地方定义hashchange处理程序,然后在页面加载时如果location.hash不为空则调用它。 像这样:
window.onhashchange=function(){
var targetDiv = $(location.hash);
if(!targetDiv.is(':visible')){$('.page').slideUp();targetDiv.slideDown();}
else{$('.page').slideUp();}
};
if(window.hash!="") window.onhashchange();