Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从跨域文件禁用Javascript_Javascript_Jquery - Fatal编程技术网

从跨域文件禁用Javascript

从跨域文件禁用Javascript,javascript,jquery,Javascript,Jquery,我有一个html文件,打算加载XHR html文件。 这是我的密码: <div id='some-id'></div> <div id='some-id-2'></div> <script type='text/javascript'> $('#some-id').load('some-url'); </script> 我的问题是外部html文件包含一些javascript代码,这些代码是在嵌入它之后执行的。我如何预防这个

我有一个html文件,打算加载XHR html文件。 这是我的密码:

<div id='some-id'></div>
<div id='some-id-2'></div>
<script type='text/javascript'>
$('#some-id').load('some-url');
</script>

我的问题是外部html文件包含一些javascript代码,这些代码是在嵌入它之后执行的。我如何预防这个问题?url是跨域的,我没有访问远程域服务器的权限

可能不是最佳解决方案,但因为您无法控制返回的数据-

您只能加载部分HTML,例如,仅加载您感兴趣的元素:

$('#some-id').load('http://www.some-url.com/index.html div#elementId');
此外,如前所述,您可以排除脚本:

$('#some-id').load('http://www.some-url.com/index.html :not(script)');
或者,您可以在返回级别将其删除:

$.get('http://www.some-url.com/index.html', function(data) {
    $(data).find('script').remove();
    $('#some-id').html(data);
});

可能不是最好的解决方案,但因为您无法控制返回的数据-

您只能加载部分HTML,例如,仅加载您感兴趣的元素:

$('#some-id').load('http://www.some-url.com/index.html div#elementId');
此外,如前所述,您可以排除脚本:

$('#some-id').load('http://www.some-url.com/index.html :not(script)');
或者,您可以在返回级别将其删除:

$.get('http://www.some-url.com/index.html', function(data) {
    $(data).find('script').remove();
    $('#some-id').html(data);
});

使用ajax并通过$'some-id'[0]进行注入。innerHTML=而不是由内部调用的.htmlload@Samuel,来自某个url的内容是否具有单个顶级元素?如果是这种情况,您可以在URL之后指定一个与该元素匹配的选择器,加载将剥离脚本。加载外部文件是否有效?如果有效,您如何处理SOP?执行脚本有什么问题?Hamidi,你说的顶级元素是什么意思?Bergi,一切都很顺利。我只想从远程源禁用Javascript。请使用ajax并通过$'some-id'[0]进行注入。innerHTML=而不是由内部调用的.htmlload@Samuel,来自某个url的内容是否具有单个顶级元素?如果是这种情况,您可以在URL之后指定一个与该元素匹配的选择器,加载将剥离脚本。加载外部文件是否有效?如果有效,您如何处理SOP?执行脚本有什么问题?Hamidi,你说的顶级元素是什么意思?Bergi,一切都很顺利。我想做的只是从远程源禁用Javascript。没有用,因为在设置此命令之前已经执行了Javascript代码远程。如果它没有插入到DOM中,它不应该被执行-当我使用get方法时,尝试$.get方法仍然相同。没有用,因为在设置此命令之前已经执行了javascript代码远程。如果它没有被插入DOM,则不应该被执行-当我使用get方法时,尝试$.get方法仍然相同。