6

我读了很多关于SCRIPT5的其他文章:在IE9中访问被拒绝的问题,但据我所知这个是有点不同我不完全确定它为什么会发生。SCRIPT5:在IE9上由于jQuery.min CDN文件在Wordpress中被拒绝访问

情况出现在Wordpress 3.4.1安装使用标准的2011主题。我排队我用下面的函数脚本:

function my_scripts(){ 
    wp_deregister_script('jquery'); 
    wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js',null,null,true); 
    wp_register_script('cycle', 'http://ajax.microsoft.com/ajax/jquery.cycle/2.88/jquery.cycle.all.js',null,null,true); 
    wp_register_script('plugin', get_stylesheet_directory_uri() . '/scripts/plugin-init.js',null,null,true); 
    wp_enqueue_script('jquery'); 
    wp_enqueue_script('cycle'); 
    wp_enqueue_script('plugin'); 
} 

首先jquerycycle脚本都正在从拉的CDN。 plugin脚本为空,但在单个元素上调用基本的cycle除外。

此时所有的浏览器都正常工作,但IE9除外。我收到以下错误:

SCRIPT5: Access is denied 
jquery.min.js, line 2 character 68522 

我发现速度不够快,这是一个跨源问题:

Access denied to jQuery script on IE

SCRIPT5: Access is denied in IE9 on xmlhttprequest

我发现这个奇怪的,因为没有交叉起源在我的插件功能。此外,问题出现在jquery本身,而不是我的代码。尝试了几个建议的修复,但没有运气。

尝试了一些基本的东西。直接将脚本移动到页脚中。试图直接将它移动到标题中。试图削减我的剧本等式。此时拉出我的头发。

我最好的办法是实际看到是什么导致代码中的错误(因为我不能在缩小版本)。此时代码直接在标题中,因此从脚本中删除了.min,进行了刷新,并且TA-DA:现在一切都顺利运行。

如果我尝试使用wp_register_script & wp_enqueue_script移动unminified脚本声明回my_scripts()功能会再次失败。如果我尝试将未命名的脚本声明移到页脚中,它将再次失败。我当时没有测试本地副本,只有CDN版本。

这是相同的SCRIPT5错误,但我不幸的是没有代码错误从便捷生成。那天在办公室,我在周末休息。我试图在我的个人沙箱上重现事件,但在重新创建错误方面没有成功,这导致我相信未列出的东西可能是罪魁祸首。

有没有人有任何想法这里发生了什么?为什么jquery.min失败的地方,未分类的文件不会?为什么非文件文件继续失败,除非它直接在<head>

很乐意提供更多的信息,虽然有些可能要等到我下周回来工作。只要我能够,我会尽量让其他代码发布。

+0

你能展示头部分的真实浏览器输出吗? –

+0

不幸的是目前没有。这是一个与工作有关的项目。我不在现场,几天后无法获取有关社区的更多详细信息。我确实尝试了一下改善这个问题,但不确定它会暂时有多大帮助。 – voodooGQ

+0

我有一个类似的问题,但只在我的Live站点(www.riiviva.com) - 在IE9中,主滑块不会加载。但会加载IE9 +的兼容性。 – Wallter

回答

20

我有同样的问题是,jQuery 1.8.1修正了这个问题对我来说

+2

非常感谢 - 甚至没有注意到jQ更新,直到看到你的帖子。拯救了我的一天! –

+0

没错!谢谢阿克塞尔! – voodooGQ

+1

我花了大约8个小时试图调试AJAX调用和一切。我只是想诉诸切换到jsonp像_everyone else_建议...直到我找到了这个!哇,所有这些工作,它真的只是一个愚蠢的jQuery错误。谢谢! **注意**:jQuery 1.8.3也适用。 –

2

出于某种原因,@阿克塞尔的回答并没有为我工作。相反,我决定将文件托管在与我的HTML文件相同的服务器上,并且它修复了它(至少对我来说)

相关问题