javascript - 每次元素有类时 jQuery 都会执行代码

标签 javascript jquery loops

每次特定元素在 jQuery 中具有特定类时,我都会尝试执行一段代码。

我遇到的问题是代码只执行一次,然后看起来不活动。我正在使用 if 语句,但我也尝试过 while 。当我尝试时,却没有任何效果,所以这不是一个好主意。有什么解决办法吗?代码如下:

if($(".slide:first").hasClass("active-slide")) {
    $(".prev").hide();
    $(".next").click (function () {
        $(".prev").show();
    });
}

最佳答案

JQuery 查询仅执行一次。您可以在一个时间间隔内执行它:

var checkPage = function(){
    if($(".slide:first").hasClass("active-slide")) {
        $(".prev").hide();
        $(".next").click (function () {
            $(".prev").show();
        });
    }
}

var intrvl = setInterval( checkPage, 300 );

这可能有效,但在大页面上可能会变得非常慢。

我宁愿将 checkPage() 函数附加到幻灯片更改事件。

关于javascript - 每次元素有类时 jQuery 都会执行代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8789600/

相关文章:

javascript - 如何在调用事件后延迟执行函数?

java - 使用 System.currentTimeMillis() 了解 while 循环终止

ruby-on-rails - 每个循环 : show item once and sum quantity

javascript - 作为本练习的解决方案,这两个循环之间的主要区别是什么? (学习javascript)

javascript - 在 Google Map API 中创建由纬度和经度组成的两个位置点的三 Angular 形坐标的理想方法是什么

javascript - 输入未与 Vue.js 正确绑定(bind)

javascript - 从右向左滚动内容 Javascript

javascript - 显示隐藏动画不起作用

jquery - 将动态文本添加到 p 标签

javascript - 将 CSS3 动画转换为 JQuery 以便在 IE8 及以上版本中使用