我使用 jQuery v1.8.2,我刚刚从 jQuery UI 1.8.17 更新到 1.9,https://github.com/asual/jquery-address 的地址插件不再工作。
这就是我所拥有的
$.address.change(function(event) {
$("#tabs").tabs("beforeActivate", window.location.hash)
});
$("#tabs").bind("tabsactivate", function(event, ui) {
window.location.hash = ui.tab.hash;
});
我在 consolog 日志上收到错误
Uncaught TypeError: Cannot read property 'hash' of undefined
我似乎找不到问题的根源。谁能帮我找出jquery 1.9的变化,因为我一直在阅读文档,无法弄清楚如何修复(更新)它。
谢谢
编辑:我用ui.newTab.hash替换ui.tabs.has,现在它得到了一个 #undefined 哈希
在 1.9.0 中,当选项卡页面中存在 <base>
标记时,他们更改了选项卡的行为:
http://bugs.jqueryui.com/ticket/8637
看起来他们认为这是一个功能,而不是一个错误:
http://bugs.jqueryui.com/ticket/7822
但是,您可以尝试在页面中删除/添加<base>
标记。
推荐使用的$.browser,它不起作用。https://github.com/asual/jquery-address/issues/166