【问题标题】:Randomly fade <div>s随机淡入 <div>s
【发布时间】:2012-01-16 05:13:02
【问题描述】:

基本上,我正在尝试将以下两个脚本合并为一个项目。我的目标是保持第一个链接的功能,它以不同的时间间隔在随机 div 中淡出,但将其附加到 PaulPRO 的版本,因为它不断循环,例如每 5 秒。非常感谢任何帮助!

  1. http://jsfiddle.net/cMQdj/1/(感谢 mblase75)
  2. http://jsfiddle.net/Paulpro/G4pxq/(感谢 PaulPRO)

【问题讨论】:

  • 我认为你有错误的方式..第一个循环..第二个没有......
  • 您自己尝试过什么吗?您应该这样做,然后返回与您的任务相关的特定问题。
  • 那么,随机淡入某些&lt;div&gt;s 并稍微错开,然后每n秒重复一次?以前问题的链接可能会有所帮助。
  • 我尝试的组合只是不断破坏代码并且什么都不会显示。谢谢大家的时间。

标签: javascript jquery random


【解决方案1】:

我认为你的例子颠倒了。

如果您想循环 Paul 的示例,只需将他的代码包含在 setInterval 方法中即可。

setInterval($('.fadeIn').before('&lt;div&gt;&amp;nbsp;&lt;/div&gt;'), 2000);

【讨论】:

  • 我认为这行不通。您需要将其包装在 function() {} 中。
【解决方案2】:

这是怎么回事->

http://jsfiddle.net/G4pxq/9/

(function fadeInDiv(){
    var divs = $('.fadeIn');
        var elem = divs.eq(Math.floor(Math.random()*divs.length));
    if (!elem.is(':visible')){
        elem.fadeIn(Math.floor(Math.random()*1000),fadeInDiv); 
    } else {
        elem.fadeOut(Math.floor(Math.random()*1000),fadeInDiv); 
    }
})();

更新

维持仓位/订单:

http://jsfiddle.net/G4pxq/12/

$('.fadeIn').before('<div>&nbsp;</div>');

(function fadeInDiv() {
    var divs = $('.fadeIn');
    var elem = divs.eq(Math.floor(Math.random() * divs.length));
    if (!elem.is(':visible')) {
         elem.prev().remove();
        elem.fadeIn(Math.floor(Math.random() * 1000), fadeInDiv);

    } else {

        elem.fadeOut(Math.floor(Math.random() * 1000), function() {
            elem.before('<div>&nbsp;</div>');
            fadeInDiv();
        });
    }
})();

【讨论】:

猜你喜欢
  • 2015-11-11
  • 1970-01-01
  • 2011-08-05
  • 2012-04-30
  • 1970-01-01
  • 2010-11-03
  • 1970-01-01
  • 1970-01-01
  • 2017-12-07
相关资源
最近更新 更多