重新加载js文件

来源:互联网 发布:工具箱什么牌子好 知乎 编辑:程序博客网 时间:2024/05/10 16:25

第一种方法:

<span style="font-size:14px;">function addscript(){var js=document.getElementById("find");var script=document.createElement("script");script.type="text/javascript";script.src="js/edit.js";script.id="find";document.body.replaceChild(script,js);//alert("ok");}</span>
jquery:
function loadJs(file) {            var head = $("head").remove("script[role='reload']");            $("<scri" + "pt>" + "</scr" + "ipt>").attr({ role: 'reload', src: file, type: 'text/javascript' }).appendTo(head);}



第二种方法:jquery函数getscript()

$.getScript('new.js',function(){
newFun('"Checking new script"');//这个函数是在new.js里面的,当点击click后运行这个函数
});

第三种方法:

js封装成函数,需要是重新加载一遍

$(document).ready(function global(){.......

success:function(data){
//alert(data);
$("#ajax").hide();
       //cleatInterval(load);
$("#edit-main").append(data);
//addscript();
global();

}


第四种方法:

一个JavaScript逻辑,会自动绑定函数到按钮的click事件,但是这段代码会反复注册事件。这样依赖onNext函数会在点击一次按钮的时候多次触发。

    这是JQuery内部没有判断是否绑定多次,怀疑其内部用了数组保存事件函数,而且没有去重。

    下面的代码预防了这个问题。解决方案很简单。

    复制代码代码如下:

    if (!this.hasPageBarEvents) {

    $(".pNext").on("click", this, this.onNext);

    this.hasPageBarEvents = true;

    }

    以后用到JQuery要小心这个特性。

第五种方法:

采用DOM0级事件监听 ON

0 0
原创粉丝点击