我在IE7和IE8兼容模式下遇到了jQuery BBQ的问题。
history_set = function( hash, history_hash )
var iframe_doc = iframe.document, //this is the line that the error reports
domain = $.fn[ str_hashchange ].domain;`
我在上面标记的行上收到“拒绝访问”。
我听说这可能是因为iframe存在域名问题,所以我设置了
document.domain = "mydomain.com";
但仍然看到了这个问题。
帮助?
答案 0 :(得分:0)
好的,对于收到此错误的其他人,我们就是这样做的。
首先,根据Ben Alman的建议,我们对插件进行了一行更改。如果将iframe附加到窗口,.contentWindow
我们会更改为.document
我们还需要使用空白的html文件,并设置源:
//set iframe src file, will not work in IE7 & compat modes without
jQuery.fn.hashchange.domain = document.domain;
jQuery.fn.hashchange.src = 'blank.html';
//Initialize our BBQ
blah blah blah
通过这些更改,一切都按预期工作。
答案 1 :(得分:0)
这里的答案对我不起作用,但这里有一个示例实现: http://benalman.com/code/projects/jquery-hashchange/examples/document_domain/
document.domain需要在加载jQuery之前设置,并且必须与hashchange.src文件中的document.domain设置匹配。