我有一个滑块(flexslider),它动态地将类“flex-active-slide”添加到活动<li>
中。
当特定幻灯片具有“flex-active-slide”类时,我想使用 jQuery 做某事。我尝试了以下方法,但它不起作用,因为 .flex-active-class 是在它已经运行之后动态添加的:
if ( $('#slider li.about').is('.flex-active-slide') ){
$('.nav li.about').show();
}
在我的研究中,似乎我想使用 on(),但我看到的所有示例都将它与 click() 或 hover() 等事件相关联。这不是由类似的东西触发的——类只是“出现”。我无法弄清楚如何格式化它。像这样的东西……?
$(document).on('???',".flex-active-slide", function() {
$(".nav li.about").show();;
})
我敢肯定这是非常不正确的......我很感激你能提供的任何帮助!
注意:我不能简单地使用 CSS,因为我试图影响的 .nav 与滑块 div 完全无关。
更新:这似乎是 flexslider.js 中控制添加 flex-active-slide 类的代码。这里有什么暗示我可以做的事情吗?
slider.flexAnimate = function(target, pause, override, withSync, fromNav) {
if (asNav && slider.pagingCount === 1) slider.direction = (slider.currentItem < target) ? "next" : "prev";
if (!slider.animating && (slider.canAdvance(target, fromNav) || override) && slider.is(":visible")) {
if (asNav && withSync) {
var master = $(vars.asNavFor).data('flexslider');
slider.atEnd = target === 0 || target === slider.count - 1;
master.flexAnimate(target, true, false, true, fromNav);
slider.direction = (slider.currentItem < target) ? "next" : "prev";
master.direction = slider.direction;
if (Math.ceil((target + 1)/slider.visible) - 1 !== slider.currentSlide && target !== 0) {
slider.currentItem = target;
slider.slides.removeClass(namespace + "active-slide").eq(target).addClass(namespace + "active-slide");
target = Math.floor(target/slider.visible);
} else {
slider.currentItem = target;
slider.slides.removeClass(namespace + "active-slide").eq(target).addClass(namespace + "active-slide");
return false;
}
}
...