Kei*_* L. 1 javascript jquery file append
我想在点击链接后添加.js文件..js文件是一个脚本,没有直接调用的函数,但必须将文件插入站点的正文部分.
另一种解决方案是,如果在页面加载时调用文件,并且如果调用了链接的click事件,则删除.js文件.
我尝试过类似的东西,但没有任何反应:
$(".myLink").click(function(){
$.getScript("myJavascriptFile.js");
});
Run Code Online (Sandbox Code Playgroud)
还在这里:
$(".myLink").click(function(){
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = "app_javascript/dragscroll.js";
$(".myDiv").append(script); // or $("body").append(script);
});
Run Code Online (Sandbox Code Playgroud)
嗯,实际上,"没有任何反应"听起来很可能听起来太大声.getScript完全是异步的,所以你应该提供任何代码,它依赖于在load handler中使用这个脚本,这实际上是第二个param.
$.getScript('here_comes_the_script.js', function(){...//here comes the code})
您可以使用一些包装来使事情更灵活 - 通过将事件传递给加载处理程序,如下所示:
getScriptDetectable = function(src) {
getScript(src, function() {
$(document).trigger("new_script", {src: src})
});
}
Run Code Online (Sandbox Code Playgroud)
但是,这当然不能让您免于考虑这段代码是异步的这一事实.
关于删除脚本.实际上没有通用的方法使浏览器"解开"代码.
您可以尝试执行以下操作:
var src = document.querySelector('script');
src.parentNode.removeChild(src);
Run Code Online (Sandbox Code Playgroud)
但是这个已经评估过的文件中的所有代码都已经过评估,因此没有多大意义.
| 归档时间: |
|
| 查看次数: |
8043 次 |
| 最近记录: |