【问题标题】:Using jquery to randomly show something使用 jquery 随机显示一些东西
【发布时间】:2011-12-09 12:25:09
【问题描述】:

我的问题是这样的:

我有div 的背景图片,不透明度是0!当您将鼠标悬停在它上面时,不透明度变为1,但我也希望它随机显示几次。所以我正在寻找一种方法来随机给这个div 不透明度值1

【问题讨论】:

    标签: jquery animation random


    【解决方案1】:
    $(function(){
        setInterval(someFunction, 1000);  //1000 is milliseconds to next random check
    });
    
    function someFunction(){
        var chance = 10;  //1 in 10 chance to show the div
        var rand = Math.floor(Math.random()*chance)+1;  //generate random number 1-chance
        if(rand == 1) //show the number
        {
            $('#someId').css('opacity', 1);
        }
        else
        {
            $('#someId').css('opacity', 0);
        }
    }
    

    您可以调整时间和机会来确定显示 id 的频率。

    【讨论】:

    • 这看起来很有希望,但是请您检查一下我认为有一些语法错误...谢谢!
    • 将其更改为实际工作,并修改不透明度而不是使用 jQuery 隐藏。
    【解决方案2】:

    类似:

    var d = new Date();
    if (d.getTime() % 3 ==0) 
    
    opacity = 1
    else 0;
    

    【讨论】:

    • 日期是一个不断变化的变量。调用此代码的时间有 1/3 (% 3),它会是真的。
    • 这是滴答声!这是一个巨大的数字,你有 1/3 的机会是真的。就像在说:“为我选择一个大数字,看看它是否是 %3”
    【解决方案3】:

    没错,就是

    <script>
      var sets = {
      minsec: 1,
      maxsec: 10
      };
    
      var t=setTimeout("showthediv()", (Math.floor(Math.random()*(sets.maxsec - sets.minsec)) + sets.minsec)*1000);
    
      function showthediv()
      {
          if ($('#element').queue().length == 0)
          {
              $('#element').fadeTo('slow',1);
          }
          var x=setTimeout("showthediv()",(Math.floor(Math.random()*(sets.maxsec - sets.minsec)) + sets.minsec)*1000);
      }
    </script>
    

    编辑: 使其可配置时间范围,并添加检查动画是否已完成。设置以秒为单位而不是毫秒

    【讨论】:

    • 在设置下一个随机 setTimeout 之前,您可能至少需要等到上一个淡入淡出完成。您最终可能会尝试同时进行多个淡入淡出。
    • 您想为此使用 setInterval。您的代码可能会引发“递归过多”警告。
    • 吐司你能告诉我我该怎么做...对不起,但我是初学者
    • 我忘记了结束)。 OP 要求一个随机的时间范围,这是一个真正的随机时间范围,请添加一行以检查动画是否已经完成
    猜你喜欢
    • 2011-05-09
    • 2017-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多