Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.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
jquery:fadeIn()和out函数在IE中的工作方式不同_Jquery_Fade - Fatal编程技术网

jquery:fadeIn()和out函数在IE中的工作方式不同

jquery:fadeIn()和out函数在IE中的工作方式不同,jquery,fade,Jquery,Fade,HTML JS 目标:毕竟.bannerloop div是动画的,display.bannerlast div 在除IE之外的所有浏览器中都可以正常工作-它会淡出第一个div,然后停止。试试这个 var divs = $('.banner').children('.bannerloop'); var divscnt = divs.length; $(divs).delay(2000).each(function(index) { $(this).delay(3000*inde

HTML

JS

目标:毕竟.bannerloop div是动画的,display.bannerlast div

在除IE之外的所有浏览器中都可以正常工作-它会淡出第一个div,然后停止。

试试这个

  var divs = $('.banner').children('.bannerloop');
  var divscnt = divs.length;
  $(divs).delay(2000).each(function(index) {
    $(this).delay(3000*index).fadeIn(1500).fadeOut(1500, function() {
      if (index = spanscnt - 1) {
        $('.bannerlast').delay(3000*index).fadeIn(1500);
      }
    });
  });
var指数=0;
函数fadeMe()
{
$('div.banner div.bannerloop:eq('+index+')).delay(3000*index).fadeIn(1500).fadeOut(1500,函数(){
索引++;
如果(索引<$('div.banner div.bannerloop')。长度){
fadeMe();
}
否则{
$('div.banner div.bannerlast').delay(3000*索引).fadeIn(1500);
}
});
}
fadeMe();

我不太喜欢jQuery的delay()函数,但我试着复制您所拥有的。在所有当前浏览器中均可正常工作。

出现编码错误


if(index=spanscnt-1){should是if(index=divscnt-1){

if(index=spanscnt-1){
应该是
if(index=divscnt-1){
divs
是一个JQuery对象,不需要再次用
$(divs)包围它
。在juqery对象中添加
$
前缀,
divs
=>
$divs
是一种很好的做法,这样您就不会感到困惑。@Zoltan:这真是太愚蠢了。谢谢!!!在IE中对我也很好,但在同一代码中还有另一个错误。如果(index==divscnt-1)(注意double=)这应该会停止它在所有浏览器中的工作!
$(divs).delay(2000)。每个(…
似乎都是
delay()
的冗余使用,因为它也在
each()
循环中设置;
$(this).delay(3000*索引).
.none {
    display: none;
}
  var divs = $('.banner').children('.bannerloop');
  var divscnt = divs.length;
  $(divs).delay(2000).each(function(index) {
    $(this).delay(3000*index).fadeIn(1500).fadeOut(1500, function() {
      if (index = spanscnt - 1) {
        $('.bannerlast').delay(3000*index).fadeIn(1500);
      }
    });
  });
var index = 0;

function fadeMe()
{
    $('div.banner div.bannerloop:eq('+index+')').delay(3000*index).fadeIn(1500).fadeOut(1500,function(){
        index++;
        if(index < $('div.banner div.bannerloop').length) {
            fadeMe();
        }
        else {
            $('div.banner div.bannerlast').delay(3000*index).fadeIn(1500);
        }
    });
}

fadeMe();