1

我有一个网页,需要我在两个不同的区域加载相应的 div(意味着它们共享相同的信息)。这类似于同一广告活动的多个横幅广告在整个网页上加载的方式,并且当您点击刷新时,它是不同的广告(有一次您的页面充满了丰田广告,刷新时您会看到不同的 Adob​​e 实例) .

现在,我正在成功加载三个随机 div 之一。我将它们放在无序列表中,因为我的 div 中有 div。

<!-- HTML -->
<ul id="reps">
    <li>
        <div class="contact1">
        ...
        </div>
    </li>
    <li>
        <div class="contact2">
        ...
        </div>
    </li>
    <li>
        <div class="contact3">
        ...
        </div>
    </li>
</ul>

和这里的脚本,它在我身上工作:

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

    $(document).ready(function(){    
        $('#reps li').hide();
        randomtip();
    });

现在我需要复制它,并让第二组 div 对应于上面的那个。也许我需要使用 PHP?不确定...感谢您的帮助!

4

2 回答 2

1

例如,假设您在页面上有另一个 ID 为“reps2”的 div 列表,您可以通过用逗号分隔不同的选择器来一次隐藏/显示您想要的所有元素:

$('#reps li,#reps2 li').hide();

...

$("#reps li:nth-child(" + ran + "),#reps2 li:nth-child(" + ran + ")").show();

或者,您可以使用.add()

$('#reps li').add('#reps2 li').hide();
于 2013-06-04T21:04:09.247 回答
1

你也可以做这样的事情,有点递归:

http://jsfiddle.net/sanpopo/Hq8KC/

randomtip = function (randNum, el) {
    var length = el.length, ran;    
    if (randNum === "") {
    ran = Math.floor(Math.random() * length);  
    } else {
        ran = randNum;
    }    
    $(el.eq(ran)).show();     
    return ran;    
};
于 2013-06-04T21:17:12.910 回答