【问题标题】:Randomly display a different background every time a page is displayed每次显示页面时随机显示不同的背景
【发布时间】:2009-10-06 23:49:35
【问题描述】:

我有 5 张图片想在不同时间用作背景(需要随机选择一张作为 body 标签的背景)。我该怎么做,这可以在 Rails 控制器/方法中或通过 ERB 或通过 JQuery 完成吗?

【问题讨论】:

    标签: jquery ruby-on-rails


    【解决方案1】:

    这是一个获取随机条目的好方法:

    random_bg = ['bg1.png', 'bg2.png', 'bg3.png'].shuffle.first
    

    在 Ruby 1.9 中,这更容易:

    random_bg = ['bg1.png', 'bg2.png', 'bg3.png'].sample
    

    我会把它放在你的 ERB 模板中 - 它与 html 直接相关。

    【讨论】:

      【解决方案2】:

      没有必要使用 jQuery/Javascript 来执行此操作。您可以在 Controller 方法或 ERB 模板中执行此操作。在任何一种情况下,您都将拥有背景图像文件名的array,并且您将get a random number 在适当的范围内,然后将背景图像文件名设置为名称位于随机选择位置的图像。如果您在 Controller 而不是模板中执行此操作,则需要在 Controller 代码中设置一个包含图像名称的变量,以便模板可以读取它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-03-31
        • 2018-09-21
        • 2011-01-16
        • 2017-06-24
        • 2013-07-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多