我正在为 Wordpress 使用 Revolution Slider 插件。Rev Slider 提供了一个用于更改幻灯片或监听事件的 api。在滑块包装器下方,我使用<a id="<?php echo "rev-slide-".$vid_link ?>" href="#"><?php echo $link ?></a>
其中 $vid_link 是递增整数和 $link 是输入到自定义字段中的一些文本来动态添加到每张幻灯片的链接。我想要在我的脚本文件中做的是为每个链接添加一个点击监听器,该链接将访问 rev slider api 来更改幻灯片。到目前为止,我已经尝试了以下方法:
jQuery(document).ready(function($) {
//...
if(typeof revapi1 === 'undefined') return;
revapi1.bind('revolution.slide.onloaded', function() {
var totalSlides = revapi1.revmaxslide();
var changeSlide = function(x) {
revapi1.revshowslide(x);
}
for (var i = 2; i <= totalSlides; i++) {
jQuery("#rev-slide-" + i).click(function(e) {
e.preventDefault();
changeSlide(i);
});
}
});
});
这里 revapi1 是赋予特定滑块的 var 名称。我在直接从循环本身内部使用 for 循环变量调用 revshowslide() 时遇到了范围问题。我尝试将 api 调用包装在一个单独的函数中,但它仍然只接收 i 的最终值。对此的任何帮助将不胜感激。