我有一些代码(由另一位开发人员编写)在 WordPress 中进行 AJAX 页面加载(例如,没有页面重新加载),当您单击导航项时,AJAX 会刷新主要内容区域。我的问题是它在 IE7 中坏了,我不知道从哪里开始调试。
最初的开场白是
var queue = 0;
$('document').ready(function() {
window.addEventListener("hashchange", hashChange, false);
// Define window location variables
var windowHost = window.location.host,
windowHash = window.location.hash,
windowPath = window.location.pathname;
但是我更改了它们以addEventListener
根据该方法是否存在来设置条件。一些研究告诉我,该方法在旧版本的 IE 中不可用(例如,在我的情况下为 7)。此外,IE7 调试控制台将其识别为不可用的方法,所以这很清楚。我重写了如下几行,但代码仍然无法正常工作:
var queue = 0;
$('document').ready(function() {
if(window.addEventListener) {
window.addEventListener("hashchange", hashChange, false);
}
else if (window.attachEvent) {
window.attachEvent("hashchange", hashchange, false);
}
// Define window location variables
var windowHost = window.location.host,
windowHash = window.location.hash,
windowPath = window.location.pathname;
完整的原始脚本可以在这个 pastebin 中查看:http: //pastebin.com/Jc9ySvrb