【发布时间】:2014-12-11 22:52:22
【问题描述】:
我正在为 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 的最终值。对此的任何帮助将不胜感激。
【问题讨论】: