随机旋转跨度的内容

时间:2013-08-07 13:06:55

标签: javascript jquery html swap

我正在尝试将<span>文本更改为七个文本块中的一个。我找到了一个可以帮助我使用下面的Javascript来完成它的教程,但是,它依赖于<ul>中保留的选择。我不认为我能做到这一点,因为我需要更改的文本出现在预先存在的段落中。

我认为可能有一种方法可以为span提供id,然后在Javascript中设置内容可能的不同选项。

我只希望在页面加载或刷新时随机发生更改,没有什么比在用户输入或计时器上发生更复杂。

下面是我在教程中找到的脚本,也许只是一个简单修改的​​案例。我是一个新手,但是,除非它已经拼写出来,否则我真的不知道从哪里开始。

<script type="text/javascript">

this.randomtip = function(){
    var length = $("#tips li").length;
    var ran = Math.floor(Math.random()*length) + 1;
    $("#tips li:nth-child(" + ran + ")").show();
};

$(document).ready(function(){   
    randomtip();
});

</script>

1 个答案:

答案 0 :(得分:0)

这样的工作:

<强>的Javascript

<script type="text/javascript">
    $(document).ready( function() {

        // hide all of the tips
        $('#tips').children('.tip').hide();

        // randomly select one tip to show
        var length = $("#tips .tip").length;    
        // **EDIT **
        // This code was buggy!
        //var ran = Math.floor(Math.random()*length) + 1;
        //$("#tips .tip:nth-child(" + ran + ")").show();
        // Use this instead:
        var ran = Math.floor((Math.random()*length));
        $('#tips > .tip:eq('+ran+')').show();
    });
</script>

<强> HTML

<p id="tips">
    <strong>Random Tip: </strong>
    <span class="tip">This is tip 1.</span>
    <span class="tip">This is tip 2.</span>
    <span class="tip">This is tip 3.</span>
    <span class="tip">This is tip 4.</span>
    <span class="tip">This is tip 5.</span>
    <span class="tip">This is tip 6.</span>
    <span class="tip">This is tip 7.</span>
</p>