基于(哈希)链接组件触发JavaScript

时间:2012-01-31 15:43:10

标签: jquery hash reload

我有一个简单的jquery函数,可以在网址栏中显示#showvideo时显示视频,当您输入网址并访问file.html#showvideo时可以显示该视频,但在点击链接时则无效。我是否需要设置某种侦听器事件才能触发此事件? #video链接将嵌入到vimeo视频中,因此我无法更改标记

$(function(){
    if(window.location.hash == '#showvideo') {
        $(".current #video").show();
    }
})

2 个答案:

答案 0 :(得分:2)

你需要注意onhashchange。

https://developer.mozilla.org/en/DOM/window.onhashchange

这是一个跨浏览器兼容的库/ polyfill:

http://benalman.com/projects/jquery-hashchange-plugin/

答案 1 :(得分:0)

您需要注意哈希更改。像History.js这样的库可以帮助解决这个问题。某些浏览器可以监听hashchange事件。对于没有的浏览器,您可以设置一个间隔较短的轮询计时器来检查哈希的更改。