javascript - script动生成的script标签怎么阻止它继续请求
迷茫
迷茫 2017-04-11 10:28:37
[JavaScript讨论组]

动态创建了个script标签,然后又阻止它请求
比如:

var js=document.createElement('SCRIPT');
js.src="url.....";
document.body.appendChild(js);
setTimeout(function(){
    js.remove();
},2000);

js.remove();//这样移除后并不起作用,还是继续请求了,有什么办法阻止请求吗?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(1)
黄舟

请求已经发出,你这样终止肯定不行的。
这个是浏览器,或者http请求的特性。

具体你的需求不是很清楚,虽然请求不能阻止,但是我们可以控制请求之后的解析过程。
比如,你想要执行的代码,如果直接暴漏在外部,肯定会被解析和执行。你这里给人的感觉,就是想不执行(都会被浏览器解析,这个避免不了)。

我们可以把要执行的处理逻辑,封装到一个独立的,类似于初始化函数中,比如叫init。这样,我们需要执行的时候调用一下init方法即可,如果不想执行,不调用即可。

简单举例说明。
比如加载的脚步文件内容为:

console.log('xx');

文件加载之后,就会立即解析并输出结果。

我们将文件内容替换为:

window.init=function(){
    console.log('xx');
}

虽然文件也会被解析,但是并不会输出内容。这样,我们就可以通过init方法来控制,是否要输出内容(是否要执行具体的逻辑)

上述,不知道是否满足你的需求。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号