我知道这里有一些类似的问题,但我正在尝试获取特定的值。
我正在开发 Flexslider http://www.woothemes.com/FlexSlider/并尝试向失去“flex-active-slide”类的幻灯片添加一些特殊功能。根据文档,我成功地在幻灯片动画之前和之后插入了我的函数。
// Callback API
start: function(){},
before: function(){
$('li.image').someFunction(); //this is where I need to trigger this event only to the li.image that's losing the flex-active-slide class
},
after: function() {
$('li.flex-active-slide').otherFunction(); //this is where the active class
},
我不需要为所有其他 li.image
元素运行该函数,如上例所示,只需为丢失 flex-active-slide 类的元素运行该函数。
我需要获取此元素并使用变量定义它,以便我可以仅针对 li.image
正确运行该函数,这对于性能优化目的也有意义。
感谢任何帮助。
最佳答案
更简单的方法是编辑插件文件本身
打开jquery.flexslider.js
找到以下代码
active: function() {
slider.controlNav.removeClass(namespace + "active").eq(slider.animatingTo).addClass(namespace + "active");
}
您可以在此函数中使用 slider.controlNav
来完成您的工作。 slider.controlNav
引用您使用 jQuery 的 .find
查找其子图像的 li
元素
如果它不起作用,您可以在此文件中找到 active-slide
并查看该类被删除的位置,您可以在这些位置添加代码
更新:$('li.image').eq(slider.currentSlide)是调用失去事件类的幻灯片的方法。
关于jQuery - 为丢失特定类的元素定义变量并运行函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11857451/