增量计数器Javascript/JQuery
我正在想办法使这个计数器工作。在播放了一定数量的动画之后,我想刷新页面。我知道我的代码很烂。我没有受过这方面的教育,而且我是一个新手,更不用说我现在很难集中精力(至少可以说)呆在哪里。。。所以要友善。这是:增量计数器Javascript/JQuery,javascript,jquery,Javascript,Jquery,我正在想办法使这个计数器工作。在播放了一定数量的动画之后,我想刷新页面。我知道我的代码很烂。我没有受过这方面的教育,而且我是一个新手,更不用说我现在很难集中精力(至少可以说)呆在哪里。。。所以要友善。这是: $(document).ready(function () { function loop() { var p = 0; if (p = 3) { location.reload(true); } else {
$(document).ready(function () {
function loop() {
var p = 0;
if (p = 3) {
location.reload(true);
} else {
$("#p3").delay("1000").fadeIn("slow");
$("#p3").delay("1000").fadeOut("slow", loop);
p + 1;
};
loop();
});
我做了一些假设并编写了我认为是您想要的,代码未经测试 将其更改为:
$(document).ready(function () {
var globalP = 0;
//this is called when fadeOut completes.
function fadeComplete() {
if (globalP == 3) {//if it is 3 reload..
location.reload(true);
} else {
globalP++;//increment counter
animate();//start animation again...
}
}
function animate() {
//start fading in...
$("#p3").delay("1000").fadeIn("slow", function() {
//start fading out when the fadeIn completes.
//should this happen? Since you're fading in the SAME element.
$("#p3").delay("1000").fadeOut("slow", fadeComplete);
});
};
animate();
});
我做了一些假设并编写了我认为是您想要的,代码未经测试 将其更改为:
$(document).ready(function () {
var globalP = 0;
//this is called when fadeOut completes.
function fadeComplete() {
if (globalP == 3) {//if it is 3 reload..
location.reload(true);
} else {
globalP++;//increment counter
animate();//start animation again...
}
}
function animate() {
//start fading in...
$("#p3").delay("1000").fadeIn("slow", function() {
//start fading out when the fadeIn completes.
//should this happen? Since you're fading in the SAME element.
$("#p3").delay("1000").fadeOut("slow", fadeComplete);
});
};
animate();
});
您的if(p=3)
语句使用赋值运算符=
而不是比较运算符==
或=
。因此p
被分配到3
,其结果是真实的,因此else
语句永远不会执行
另外,您的p
变量在loop()
函数中声明,因此每次调用函数时它都会被重置-您可以将该声明移动到函数之前(将其保留在文档就绪处理程序中:无需使其成为全局变量)
也包括线p+1
不做任何事情:它不会增加p
,因为您需要使用p=p+1
将结果分配回p
,简称为p+=1
,或者只是p++
最后,您发布的代码有一个语法错误:您缺少loop()
函数中的结束}
。我猜目的是结束函数,然后调用它,因此:
$(document).ready(function () {
var p = 0; // <--- moved outside function
function loop() {
if (p === 3) { // <-- changed = to ===
location.reload(true);
} else {
$("#p3").delay("1000").fadeIn("slow");
$("#p3").delay("1000").fadeOut("slow", loop);
p++; // <-- changed from p + 1
};
} // <--- this is the missing bracket
loop();
});
$(文档).ready(函数(){
var p=0;//如果(p=3)
语句使用赋值运算符=
而不是比较运算符==
或=
,那么p
将被赋值到3
,其结果是真实的,因此else
语句永远不会执行
另外,您的p
变量在loop()
函数中声明,因此每次调用函数时它都会被重置-您可以将该声明移动到函数之前(将其保留在文档就绪处理程序中:无需使其成为全局变量)
另外,行p+1;
没有任何作用:它不会增加p
,因为您需要使用p=p+1
将结果分配回p
,缩写为p+=1
,或者只是p++
最后,您发布的代码有一个语法错误:您缺少loop()
函数中的结束}
。我猜您的目的是结束函数,然后调用它,因此:
$(document).ready(function () {
var p = 0; // <--- moved outside function
function loop() {
if (p === 3) { // <-- changed = to ===
location.reload(true);
} else {
$("#p3").delay("1000").fadeIn("slow");
$("#p3").delay("1000").fadeOut("slow", loop);
p++; // <-- changed from p + 1
};
} // <--- this is the missing bracket
loop();
});
$(文档).ready(函数(){
var p=0;//尝试重新编写您的问题我尝试在那里编写,但我做了一些错误的事情,我不知道它是什么。我认为计数器的基本原理是正确的,但我做了一些错误的事情,我没有经验知道它是什么……关于重新编写,我的观点是它将帮助您理解需要包含哪些代码例如,什么元素是#p3
?啊,对不起,我想这会让事情变得混乱。#p3只是在某个时间出现的一段,它与变量P没有关系,它只是一个计数器,在三个循环的fadein代码之后刷新页面。我正在使用的页面上的实际fadein,FadeOut代码是m再长一点,这是一个简短的版本。我在我的网页上以这种方式使用了大约十段。尝试重新编写你的问题我试图让它在那里工作,但我做了一些错误的事情,我不知道它是什么。我想计数器的基本原理是可以的,但我做了一些错误的事情,我没有经验知道是什么在这一点上,我关于repu的观点是,它可以帮助你理解问题中需要包含哪些代码。例如,#p3
是什么元素?啊,对不起,我认为这会让事情变得混乱。#p3只是在特定时间出现的一段,它与变量P没有关系,它只是一个刷新pa的计数器三个循环的fadein代码后的页面。我正在使用的页面上的实际fadein,FadeOut代码更长,这是一个缩短的版本。我在我的网页上以这种方式使用了大约十个段落。非常感谢您花时间写出所有这些。非常感谢。请投赞成票并给出正确答案!非常感谢非常感谢你花时间把这些都写出来。非常感谢。请投赞成票并给出正确的答案!非常感谢你花时间回答这个问题。我同意上面的答案只是因为它有点简单:D但无论如何,谢谢你,这也行得通!!非常感谢你花时间回答这个问题。我要只因为上面的答案稍微简单了一点,我就用它来回答:D,但无论如何,谢谢你,这也会有用的!!