为什么这个JavaScript在IE中导致“权限被拒绝”错误
以下代码在IE中引发了Permission Denied
错误,引用了jQuery(1.6.2)第6244行Char:2:
function addAgreement() { var url = window.location.toString(); var pieces = url.split('/'); var site_url = url.replace(pieces[pieces.length -1], ''); $('.login').append(''); $('#dialog').load(site_url + '?page_id=443'); } $('#dialog').dialog({ width: 800, position: 'top', modal: true, buttons: { "Agree": function() { agreed = true; var val = $('#registerform').attr('action') + '&agreed=1'; $('#registerform').attr('action', val); $(this).dialog("close"); $('#registerform').trigger('submit'); }, "Disagree": function() { agreed = false; $(this).dialog("close"); } } });
它适用于Firefox – 这与同源策略有关吗? jQuery由Google CDN提供服务。
更新正在加载的内容是一个WordPress页面,其中还包含cufon-yui.js
(本地提供)的包含。 我也试过在本地提供jQuery(即不是来自谷歌CDN),这没有任何区别。
更新2从加载的页面中删除以下脚本标记可以阻止错误显示。
<script type='text/javascript' src='/inc/js/cufon-yui.js'> <script type='text/javascript' src='/inc/js/path/to/font.js'> Cufon.replace('#page')('.title');
对于AJAX请求,www。 被视为子域并破坏了xmlhttprequestobject的同源策略。 确保AJAX请求中的域与页面域和javascript文件匹配。