重新加载js文件

本文介绍了几种JavaScript重新加载文件的方法,包括js封装成函数和在$(document).ready中的使用。同时,针对JavaScript事件绑定可能产生的多次触发问题,提出了简单的解决方案,防止事件监听器重复注册,确保代码的正确执行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一种方法:

<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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值