阻止加载页面的javascript

prevent javascript of loaded page

本文关键字:javascript 加载      更新时间:2023-09-26

我有用于临时存储网页代码的div,但是,页面包含javascript,我应该怎么做才能阻止这些javascript,这样我的程序就不会被中断?我使用下面的代码加载

$.ajax({
type:'GET',
dataType:'html',
cache:false,
url:file,
success:function(html){
     ...
     ...
     $('#temp').html(html)
}
});

.html(string)函数将使用innerHTML来评估所有脚本。您可以使用.text(string)来临时保存HTML内容。

$('#temp').text(html);

然后稍后检索并执行它,如果您想要

$('#element').html($('#temp').text());

不过,如果您只想去掉所有<script>标记,请使用一个简单的regex-replace。

**更新**

StackOverflow已经给出了一些关于在字符串中删除<script>标记的答案。

您可能只需要将ajax请求设置为同步请求,但您的问题有点不清楚,而且很可能是不可能的。

http://api.jquery.com/jQuery.ajax/

既然我被否决了,让我澄清一下:如果您的脚本在页面中的其他代码段之前运行,您可以简单地删除脚本标记,但我认为这不是一个可接受的答案,因为这可能会导致页面中依赖这些脚本的部分停止运行。

如果脚本已经在运行,删除脚本标记可能还不够,或者可能会产生错误,导致脚本无法运行。

你需要提供一个更好的例子来说明你到底在做什么,才能得到一个明确的答案。