Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript window.location.hash在Chrome/Safari中不起作用_Javascript_Jquery_Webkit - Fatal编程技术网

Javascript window.location.hash在Chrome/Safari中不起作用

Javascript window.location.hash在Chrome/Safari中不起作用,javascript,jquery,webkit,Javascript,Jquery,Webkit,我的网站上有以下代码,基本上检查URL中是否有散列,如果有,就会触发单击选项卡。除了在Chrome/Safari中之外,它工作得很好-有什么办法可以解决这个问题吗 jQuery(document).ready(function() { if(window.location.hash){ $("a#viewapart").trigger('click'); } }); 如果我用alert('hello')代替,它就不起作用;所以它只是因为某种原因无法识别if(w

我的网站上有以下代码,基本上检查URL中是否有散列,如果有,就会触发单击选项卡。除了在Chrome/Safari中之外,它工作得很好-有什么办法可以解决这个问题吗

jQuery(document).ready(function() {
    if(window.location.hash){ 
        $("a#viewapart").trigger('click');
    }
});
如果我用alert('hello')代替,它就不起作用;所以它只是因为某种原因无法识别if(window.location.hash)

谢谢

试着这样做:

if (window.location.hash != null && window.location.hash.length > 0) {
    $('a#viewapart').trigger('click');
}

应该可以工作,除非动态设置哈希

jQuery(document).ready(function() {
    var t = window.location;
    var hash = t.hash || ((t = t.href.match(/#([^?]*)/)) && t[1]);
    if(hash){ 
        $("a#viewapart").trigger('click');
    }
});

如果您尝试在
标记之前放置一个
脚本
标记

  ...
  <script>
    if(window.location.hash){ 
      $("a#viewapart").trigger('click');
    }
  </script>
</body>
。。。
if(window.location.hash){
$(“视图分离”).trigger('click');
}

您可能在转盘脚本初始化并绑定所有单击之前执行它

$(document).ready(function() {
    if (window.location.hash){ 
        $("a#viewapart").trigger('click');
    }
    $("#slider").jcarousel();
});
您需要在转盘脚本初始化后执行它

$(document).ready(function() {
    $("#slider").jcarousel();
    if (window.location.hash){ 
        $("a#viewapart").trigger('click');
    }
});

我在许多网站的chrome中测试了
javascript:alert(window.location.hash?true:false)
,效果很好!如果没有空间限制,请不要提供缩短的URL;“在我点击链接之前,我真的很想知道我要去哪里。”Marcel Korpel表示同意。并已编辑。=)多么令人沮丧-这似乎是工作在标签被点击(它是突出显示的一个),但标签内容没有显示。只有当我单击另一个选项卡,然后再次返回到它时,它才会显示。至少我更近了一步!这与上面的效果相同-选项卡似乎已被单击,但选项卡的内容只是没有显示。url在这里:-在“公寓”选项卡上,它会显示一个公寓列表,单击“下一页”按钮刷新下一批公寓的页面,我想在这里再次自动切换到公寓选项卡,使用url中的hasg作为触发器。有更简单的方法吗?这很有效!但现在在滑到下一张幻灯片之前加载所有图片似乎太慢了。我肯定我错过了一条更容易的路——但是谢谢!