用js如何删除动态加载的js文件。
我的页面在不同的操作上异步加载了很多js文件。由于加载太多js文件页面很卡,现在我需要用js来删除这些异步加载的js文件,请问怎么做。谁帮我解决可以加分。...
我的页面在不同的操作上异步加载了很多js文件。由于加载太多js文件页面很卡,现在我需要用js来删除这些异步加载的js文件,请问怎么做。
谁帮我解决可以加分。 展开
谁帮我解决可以加分。 展开
3个回答
展开全部
加载JS文件有2种常用的方式:
直接用 script 标签引入js文件
在js脚本里,什么使用js文件,动态的在使用前面创建script标签引入js文件。
第一种,没有办法阻止js脚本引入。除非不写。如果页面在加载时已经加载了,script标签就是删除了,js依然生效。
第二种,可以在创建script标签前阻止创建,这样就可以阻止引入js文件了。
下面是第二种的代码,仅供参考:
<script>
function createJS(url){
//阻止动态创建
if(true) return;
//创建script标签并引入js文件
var oS = document.createElement('script');
oS.src = url;
document.getElementByTagName('head')[0].appendChild(oS);
}
</script>
展开全部
JS一般来说只要是加载了,是无法删除的,原因是JS加载后生成在客户端的机器临时文件夹内!
即使是删除了那代码,实际上在客户端的机器已经存在了,没有任何用处的!
即使是删除了那代码,实际上在客户端的机器已经存在了,没有任何用处的!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个很简单啊·· 你在创建的时候给script标签定义一个id 然后通过这个ID删除js标签就行了!
function Tibetinput_OverRequest(ID){ //ID为script标签的ID
try{
var Tibetinput_js = Tibetinput_getObj(ID);//id对应的document对象
document.body.removeChild(Tibetinput_js);//删除ID的对应标签
}
catch(e){}
}
//获取id对应的document对象
function Tibetinput_getObj(id) {//所有的情况都列出来了 不会出错··呵呵
if (document.getElementById) return document.getElementById(id);
else if (document.all) return document.all[id];
else if (document.layers) return document.layers[id];
else {return null;}
}
你因该会在动态加载的时候给标签定义ID吧?
不会的看看这个参考参考··
var fileref=document.createElement('script'); //创建script标签
fileref.id = "Tibetinput_date" //给script标签定义ID
fileref.setAttribute("type","text/javascript");
fileref.src = "http://10.2.23.12/test.js //js地址
document.body.appendChild(fileref);//插入body标签中
//呵呵·· 我都这么认真 你是不是得表示表示啊···
function Tibetinput_OverRequest(ID){ //ID为script标签的ID
try{
var Tibetinput_js = Tibetinput_getObj(ID);//id对应的document对象
document.body.removeChild(Tibetinput_js);//删除ID的对应标签
}
catch(e){}
}
//获取id对应的document对象
function Tibetinput_getObj(id) {//所有的情况都列出来了 不会出错··呵呵
if (document.getElementById) return document.getElementById(id);
else if (document.all) return document.all[id];
else if (document.layers) return document.layers[id];
else {return null;}
}
你因该会在动态加载的时候给标签定义ID吧?
不会的看看这个参考参考··
var fileref=document.createElement('script'); //创建script标签
fileref.id = "Tibetinput_date" //给script标签定义ID
fileref.setAttribute("type","text/javascript");
fileref.src = "http://10.2.23.12/test.js //js地址
document.body.appendChild(fileref);//插入body标签中
//呵呵·· 我都这么认真 你是不是得表示表示啊···
追问
我用你的方法不行啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询