![](/img/trans.png)
[英]How can i toggle innerHTML inside a setInterval() function with JS
[英]onClick toggle class inside setInterval function
setInterval(function () {
$("#bound").click(function () {
$(".top").toggleClass("one");
$(".middle").toggleClass("two");
$(".bottom").toggleClass("three");
$(".nav-menu").toggleClass("menu-show");
});}, 450);
怎么了 過渡滯后太多,有時會停止工作。
怎么了
問題是您以450毫秒的間隔綁定了許多click
事件,這將導致瀏覽器消耗大量內存,並且瀏覽器最終將無響應。
其他值得注意的是,您將獲得綁定事件的數量“ n”。 因此,由於它是一個連續的過程,因此在每次迭代時它將綁定一個事件,意味着如果執行兩次迭代,則執行兩次回調。
我想您可能會這樣做:
$("#bound").click(function () {
setTimeout(function () { // <------change it to setTimeout if u don't make it infinite
$(".top").toggleClass("one");
$(".middle").toggleClass("two");
$(".bottom").toggleClass("three");
$(".nav-menu").toggleClass("menu-show");
}, 450);
});
如果您想要單擊事件后的延遲,則應將setInterval
函數放在click
函數中:
$("#bound").click(function () {
setInterval(function () {
$(".top").toggleClass("one");
$(".middle").toggleClass("two");
$(".bottom").toggleClass("three");
$(".nav-menu").toggleClass("menu-show");
}, 450);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.