Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.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_Image_Class_Rotator - Fatal编程技术网

Javascript 旋转图像脚本不保留预设类

Javascript 旋转图像脚本不保留预设类,javascript,jquery,image,class,rotator,Javascript,Jquery,Image,Class,Rotator,我使用一个脚本在一个无序列表中存储的各种图像之间旋转。脚本正在工作,但似乎删除了应用于特定Li的预设类。我希望脚本能够像当前一样工作,但不能删除我在Li上设置的类。有人能提供一些建议或修改吗?非常感谢。请参见此处的小提琴示例: http://jsfiddle.net/trobbins26/5U4Cr/5/ 或下面的脚本: function theRotator() { //Set the opacity of all images to 0 $('div.rot

我使用一个脚本在一个无序列表中存储的各种图像之间旋转。脚本正在工作,但似乎删除了应用于特定Li的预设类。我希望脚本能够像当前一样工作,但不能删除我在Li上设置的类。有人能提供一些建议或修改吗?非常感谢。请参见此处的小提琴示例:

http://jsfiddle.net/trobbins26/5U4Cr/5/
或下面的脚本:

function theRotator() {
        //Set the opacity of all images to 0
        $('div.rotator ul li').css({opacity: 0.0});

        //Get the first image and display it (gets set to full opacity)
        $('div.rotator ul li:first').css({opacity: 1.0});

        //Call the rotator function to run the slideshow, 6000 = change to next image after 6 seconds

        setInterval('rotate()',4000);

        }

        function rotate() {    
        //Get the first image
        var current = ($('div.rotator ul li.show')?  $('div.rotator ul li.show') : $('div.rotator ul li:first'));

        if ( current.length == 0 ) current = $('div.rotator ul li:first');

        //Get next image, when it reaches the end, rotate it back to the first image
        var next = ((current.next().length) ? ((current.next().hasClass('show')) ? $('div.rotator ul li:first') :current.next()) : $('div.rotator ul li:first'));

        //Un-comment the 3 lines below to get the images in random order

        //var sibs = current.siblings();
        //var rndNum = Math.floor(Math.random() * sibs.length );
        //var next = $( sibs[ rndNum ] );


        //Set the fade in effect for the next image, the show class has higher z-index
        next.css({opacity: 0.0})
        .addClass('show')
        .animate({opacity: 1.0}, 500);

        //Hide the current image
        current.animate({opacity: 0.0}, 1000)
        .removeClass('show');

        };
setTimeout(function(){
        $(document).ready(function() {        
            //Load the slideshow
            theRotator();
            $('div.rotator').fadeIn(500);
            $('div.rotator ul li').fadeIn(500); // tweek for IE
        });
        }, 500);

这个脚本不是问题所在,您必须有另一个脚本来剥离这些类。但是,我必须指出,您当前的列表项上没有任何“预设”类。唯一应用的类是预期的“show”类。正如预期的那样,该类也将被正确删除

我用两个类复制了你的滑块(提供背景色作为强调),以证明这确实有效。我没有更改任何jquery


在此处查看演示:

您能更具体一点吗?我在jsfiddle中的
  • 上放置了一个测试类,它似乎工作得很好。。。也许这是特定于浏览器/操作系统的?或者我们没有所有的信息,您是否在运行时添加这些神秘类?这是一个“工作版本”,看起来小提琴的工作原理与我的实际代码略有不同(不知道为什么)。在实际应用程序中,js在当前显示的项目上放置一个“show”类,替换我在运行时之前添加的任何类。您可以在这里使用firefox或Chrome开发工具检查我的开发示例:(旋转左侧边栏中的横幅)确定这有帮助。还有一些其他脚本与此脚本一起运行,可能正在剥离该类。我再看深一点。谢谢