此代码应每隔三秒更改#magia div的内容,但不会更改。
$(function(){
var NArray = -1;
var ringraziamenti = ["", "Thanks",
"You saved my Website",
"Now you can use it, and try to find all the hidden tresure that there are",
"Good Luck"
];
$("#Save").click(function(){
setInterval(function(){
NArray = NArray + 1;
$("#magia").html(ringraziamenti[NArray]);
}, 3000);
}
);
});
答案 0 :(得分:1)
地球上的Modify1
和Intervallo
是什么?您在寻找function
关键字吗?:
$(function() {
//...
setInterval(function() {
$("#Save").click(function() {
//...
});
}, 3000);
});
修改:此外,实际正在做什么?
此代码应每三秒更改一次#magia div的内容
嗯,不。它所做的就是每三秒设置一次点击处理程序。在单击元素之前,不会调用处理程序。你不想每三秒执行一次动作吗?删除单击处理程序:
setInterval(function() {
NArray = NArray + 1;
$("#magia").html(ringraziamenti[NArray]);
}, 3000);
如果您不想在单击元素之后设置间隔,请在点击处理程序中包含 :
$("#Save").click(function (){
setInterval(function() {
//...
}, 3000);
});
答案 1 :(得分:0)
问题是您的代码实际上并没有真正执行第NArray = NArray + 1;
行
$("#Save").click(function(){})
将点击事件绑定到#Save
元素,因此您的间隔每3000毫秒重新分配一次点击功能。在实际点击#Save
元素之前,该click函数内部的任何操作都不会执行。
您的间隔函数应如下所示:
setInterval(function (){
NArray = NArray + 1;
$("#magia").html(ringraziamenti[NArray]);
}, 3000);