我正在使用Jquery div
函数用外部加载的PHP替换.load()
的内容,我的问题是我想为php文件编写我的javascript代码并保存它在文件的底部。
所以基本上当我运行.load()
函数时,我加载的文件的内部javascript也会运行。到目前为止,这很有用。我的问题是,当我再次运行.load()
函数将不同的javascript加载到我的div
中时,加载了上一个文件的javascript,继续运行。
我需要它来停止运行最后加载的php文件的javascript,并加载新的javascript。
例如,我有1个div和5个文件,每当我点击一个按钮,使用load()
函数时,我将我选择的页面的php和javascript注入div。如果我的每个页面底部都有此代码
setInterval(function(){
console.log("hello");
},1000)
我一次加载每个页面1,它存储javascript并在结果中运行控制台日志"你好"每秒5次。
我想要它做的是删除以前的javascript,并在每次选择新页面时加载新的。
我如何实现这一目标?
答案 0 :(得分:3)
您需要将其存储到变量中,如果存在则将其删除。
if (window.myInterval) window.clearInterval(window.myInterval)
window.myInterval = setInterval(function(){
console.log("hello");
}, 1000)
答案 1 :(得分:1)
最好使用
调用删除间隔clearInterval();
方法,因为一旦你调用了
setInterval();
方法,它将继续执行它所说的功能,直到你离开页面或清除间隔。