我使用以下方法动态加载了 JavaScript:
var fileref=document.createElement('script')
fileref.setAttribute("type","text/javascript")
fileref.setAttribute("src", "../scripts/sample.js");
$("head").append(fileref);
现在要删除/卸载脚本,反向操作将不起作用,因为一旦在浏览器中执行的脚本就无法删除。
有解决方案/解决方法吗?
最佳答案
您可以使用 removeChild
删除元素:
var head = document.getElementsByTagName('head')[0];
//removing it from the head, where you added them
head.removeChild(script);
<小时/>
或者
根据您在评论部分的解释,尝试此解决方案:-
var fileref=document.createElement('script');
fileref.setAttribute("type","text/javascript");
fileref.setAttribute("src", "../scripts/sample.js");
fileref.setAttribute("id","scid"); //<-------add 'id' to script
$("head").append(fileref);
然后删除带有 id
的脚本,如下所示:
var element = document.getElementById("scid");
element.parentNode.removeChild(element);
关于javascript - 动态从 html 页面中删除 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25737000/