Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 同一页上的多个索引指示器_Javascript_Jquery - Fatal编程技术网

Javascript 同一页上的多个索引指示器

Javascript 同一页上的多个索引指示器,javascript,jquery,Javascript,Jquery,我在主页上有多个全屏幻灯片。我想得到每个滑块的幻灯片索引。 是否可以通过使用for循环或其他方法在一个代码中实现这一点? html是 变量rsi=$('#参考1.royalSlider,#参考2.royalSlider')。royalSlider({ 自动高度:false, 阿罗斯纳夫:是的, globalCaption:错误, arrowsNavAutoHide:错误, fadeinLoadedSlide:false, 控制导航间距:30, controlNavigation:'null',

我在主页上有多个全屏幻灯片。我想得到每个滑块的幻灯片索引。 是否可以通过使用for循环或其他方法在一个代码中实现这一点? html是

变量rsi=$('#参考1.royalSlider,#参考2.royalSlider')。royalSlider({ 自动高度:false, 阿罗斯纳夫:是的, globalCaption:错误, arrowsNavAutoHide:错误, fadeinLoadedSlide:false, 控制导航间距:30, controlNavigation:'null', imageScaleMode:'填充', imageAlignCenter:false, addActiveClass:true, 循环:对, 循环倒带:对, numimagestopload:4, 键盘导航已启用:true, 自动缩放滑块:错误,
自动缩放滑块宽度:640,
自动缩放滑块高度:360, imgWidth:1920, 灯光:1080

}).数据('royalSlider')

$('.screen')。每个(函数(){
var slider=$(this.children();
对于(变量i=1;i<$(滑块)。长度;i++){
var ref='#ref'+i
var sliderInstance=$(ref)+''+slider.data('royalSlider');
}       
如果(滑块状态){
var slideCounter=$('').appendTo($(ref+'+'.slider detail.box.detail right'))
var updCount=函数(){
html((sliderInstance.currSlideId+1)+'/'+sliderInstance.numSlides);
}
sliderInstance.ev.on('rsAfterSlideChange',updCount);
updCount();
}
});
}))

问题解决了!代码应该是这样的

$('.royalSlider').each(function() {
    var slider = $(this);
    var sliderInstance = slider.data('royalSlider');

    if(sliderInstance) {
        var slideCounter = $('<div class="rsSlideCount"></div>').appendTo( slider.next().find('.detail-right') );

        var updCount = function () {
            slideCounter.html( (sliderInstance.currSlideId+1) + ' of ' + sliderInstance.numSlides );
        }
        sliderInstance.ev.on('rsAfterSlideChange', updCount);
        updCount();
    }

});
$('.royalSlider')。每个(函数(){
变量滑块=$(此);
var sliderInstance=slider.data('royalSlider');
如果(滑块姿态){
var slideCounter=$('').appendTo(slider.next().find('.detail right');
var updCount=函数(){
html((sliderInstance.currSlideId+1)+of'+sliderInstance.numSlides);
}
sliderInstance.ev.on('rsAfterSlideChange',updCount);
updCount();
}
});

不是
currSlideId
给了你索引吗?你的
for
循环很奇怪,虽然所有的孩子都是滑块,但不是所有的孩子都是滑块。是的,我知道。因为项目细节是隐藏的。它们通过单击“详细信息”按钮打开。因此,我将slider detail div从滑块中移出。通过一个for循环的结尾,您正在尝试访问不存在的
#ref3
。问题解决了!我会编辑这篇文章
jQuery(document).ready(function($) {
$('.screen').each(function() {
    var slider = $(this).children();
    for (var i = 1; i < $(slider).length; i++) {
        var ref = '#ref'+i
        var sliderInstance = $(ref) + ' ' + slider.data('royalSlider');
    }       

    if (sliderInstance) {           
        var slideCounter = $('<div class="sliderCount"></div>').appendTo($(ref + ' ' + '.slider-detail .box .detail-right'))
        var updCount = function() {
            slideCounter.html( (sliderInstance.currSlideId+1) + ' / ' + sliderInstance.numSlides );
        }
        sliderInstance.ev.on('rsAfterSlideChange', updCount);
        updCount();
    }

});
$('.royalSlider').each(function() {
    var slider = $(this);
    var sliderInstance = slider.data('royalSlider');

    if(sliderInstance) {
        var slideCounter = $('<div class="rsSlideCount"></div>').appendTo( slider.next().find('.detail-right') );

        var updCount = function () {
            slideCounter.html( (sliderInstance.currSlideId+1) + ' of ' + sliderInstance.numSlides );
        }
        sliderInstance.ev.on('rsAfterSlideChange', updCount);
        updCount();
    }

});