gpt4 book ai didi

jquery - 如何在jquery中使用不同的值多次调用函数

转载 作者:行者123 更新时间:2023-12-01 03:36:05 25 4
gpt4 key购买 nike

我有一个函数,我想使用不同的值同时调用它两次或多次:

var stopClock = false;

function myTimer(clockTime, inClockFunction) {

stopClock = false;
ChatClock = {
totalSeconds: 0,
start: function () {
this.interval = setInterval(function () {
if (!stopClock) {
inClockFunction()
}
else {
ChatClock.pause();
}
}, clockTime);
},
pause: function () {
clearInterval(this.interval);
delete this.interval;
}
};
ChatClock.start();
}

var time1 = 5000;
var func1 = function() {
alert(time1)
stopClock = true;
}
myTimer(5000, func1 )

var time2 = 8000;
var func2 = function() {
alert(time2)
}
myTimer(8000, func2 )

func2不会显示警报,因为func1中的stopClock变量更改为true,如何使用不同的值多次调用?

最佳答案

变量 stopClock 是全局变量,因此两个函数都访问相同的变量值。仅在函数内部初始化变量,应该没问题。这是jsFiddle为你。

您的 JavaScript 有更多公共(public)/私有(private)变量和函数冲突。这是另一个jsFiddle所有这些(代码正常运行所必需的)都已修复。

var timeris = function myTimer(clockTime, inClockFunction) {

var stopClock = false;
var ChatClock = {
totalSeconds: 0,
start: function () {
this.interval = setInterval(function () {
if (!stopClock) {
stopClock = inClockFunction();
}
else {
ChatClock.pause();
}
}, clockTime);
},
pause: function () {
clearInterval(this.interval);
delete this.interval;
}
};
ChatClock.start();
}

var time1 = 5000;
var func1 = function() {
alert(time1);
return true;
}
aa = new timeris(5000, func1 );

var time2 = 8000;
var func2 = function() {
alert(time2);
return false;
}
bb = new timeris(8000, func2 );

关于jquery - 如何在jquery中使用不同的值多次调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34328703/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com