JavaScript/jQuery - onhashchange 事件解决方法
Posted
技术标签:
【中文标题】JavaScript/jQuery - onhashchange 事件解决方法【英文标题】:JavaScript/jQuery - onhashchange event workaround 【发布时间】:2011-02-16 13:06:24 【问题描述】:在所有浏览器都支持 onhashchange 事件之前,最好的解决方法是什么?
在 jQuery 中有这方面的东西吗?还是作为插件?
【问题讨论】:
Detecting Back Button/Hash Change in URL的可能重复 【参考方案1】:不确定这是否是您要找的,但值得一试:
http://plugins.jquery.com/project/ba-jquery-hashchange-plugin
【讨论】:
【参考方案2】:是的。
查看这个 jQuery 插件:http://benalman.com/projects/jquery-hashchange-plugin/
【讨论】:
非常感谢。适用于 ie7。【参考方案3】:var lastHash = "";
window.onload=function()
hashChangeEventListener = setInterval("hashChangeEventHandler()", 50);
function hashChangeEventHandler()
var newHash = location.hash.split('#')[1];
if(newHash != lastHash)
lastHash = newHash;
//Do stuff!
在所有经过测试的(几乎所有)平台上都适合我。
【讨论】:
【参考方案4】:http://benalman.com/projects/jquery-bbq-plugin/
【讨论】:
【参考方案5】:另一个抽象url管理的库是History.js
【讨论】:
【参考方案6】:如果您正在寻找 iframe 跨域解决方案,这似乎是最强大的解决方案:http://easyxdm.net/wp/http://www.cakemail.com/the-iframe-cross-domain-policy-problem/
虽然我还没有尝试过,但它似乎有点难以实施,并且可能无法在所有情况下工作。
【讨论】:
以上是关于JavaScript/jQuery - onhashchange 事件解决方法的主要内容,如果未能解决你的问题,请参考以下文章
Javascript / jQuery - 隐藏字段时禁用验证
CodeIgniter 和 Javascript/Jquery 库