javascript - 每个函数只触发一次

标签 javascript jquery each owl-carousel

我正在尝试触发多个具有相同类的 Owl Carousel slider 上的功能。如果我执行 console.log,它会记录两次,但仅适用于第一个 slider 。

这是我的功能:

function setActiveItem(){
        var item = $('.owl-item');
        var itemLink = $('.owl-item a');
        var pos = $('.is-active').parent().parent().index();

        $('.slider-mobile').each(function() {
            if($(this).find(itemLink).is('.is-active')) {
                item.removeClass('active');
                $(this).trigger('to.owl.carousel', [pos, 1, true]);
            }
        })
    }

    setActiveItem();

这是我的标记的简化版本:

<ul class="list-container slider-mobile" data-stage-padding-items="200">
    <li class="list-item">
        <a href="#" class="title title--small list-link is-active">item</a>
    </li>
</ul>
<ul class="slider-mobile" data-stage-padding-items="200">
    <li class="list-item">
        <a href="#" class="title title--small list-link is-active">item</a>
    </li>
</ul>

我不确定我是否正确使用了each()函数,或者它是否完全满足我的需要。

最佳答案

好吧,我明白了。 @Reinder Wit,你是对的,我只引用了第一个 slider 的项目,所以我的两个 slider 都获得了相同的数据。

我这样做了:

function setActiveItem(){

        $('.slider-mobile').each(function() {
            var item = $(this).find('.owl-item');
            var itemLink = $(this).find('.owl-item a');
            var pos = $(this).find('.is-active').parent().parent().index();

            if($(this).find(itemLink).is('.is-active')) {
                item.removeClass('active');
                $(this).trigger('to.owl.carousel', [pos, 1, true]);
                console.log(pos);
            }
        })
    }

    setActiveItem();

现在正在运行。感谢您的线索。

关于javascript - 每个函数只触发一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53262389/

相关文章:

javascript - 使光标超出 span inside contenteditable

javascript - 在 JavaScript 中读取本地文本文件

javascript - 当类选择器返回 2 个元素时的 hide() 和 show() 方法

jquery - 使用 jQuery 拆分和连接以在逗号后添加空格

javascript - 如何在嵌套数组上使用 find() 方法?

javascript - 将 HTML 变量动态分配给 AS3 变量

javascript - 如何使用按钮单击关闭模式窗口

javascript - Tablesorter -> 将过滤后的数据提取到 csv 文件

ruby-on-rails - 每个数组对象的 RoR 范围

jquery - 使用 JqueryTools RangeInput 垂直自定义滚动条