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

..上面的代码.show()最终可以很好地工作,但是如果我将其更改为.addClass('show')它将无法正常工作。

我想给它一个类,而不是将float:left属性应用于所有li项目而不是 default display:list-item。我该如何解决?

谢谢!

4

4 回答 4

1

在乔丹的回答之后:

您可以替换display:nonefromli然后以这种方式添加类:

$("#showcase ul li:nth-child(" + ran + ")").css('display','').addClass('show');
于 2009-12-10T14:33:33.800 回答
0

您如何首先隐藏元素?例如,如果你将它设置display: none为 ,或者使用 jQuery 的 hide(),它会做同样的事情,那么它将覆盖在其他地方定义的 CSS 并保持你的元素隐藏,直到你删除它。如果您同时使用.show()(删除display: none)和.addClass('show')(添加您的 CSS 类),它应该可以工作。

于 2009-12-10T14:05:13.017 回答
0

尝试更换

$("#showcase ul li:nth-child(" + ran + ")").show();

有了这个

$("#showcase ul li:nth-child(" + ran + ")").addClass('show').show();
于 2009-12-10T14:17:31.540 回答
0

代替display: none, 使用.addClass('hidden')/.removeClass('hidden')

于 2009-12-10T15:02:23.057 回答