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项目,而不是默认display:list-item。我该如何解决这个问题?

谢谢!

有帮助吗?

解决方案

乔丹的回答后:

可以从display:none取代li然后添加类是这样的:

$("#showcase ul li:nth-child(" + ran + ")").css('display','').addClass('show');

其他提示

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

尝试更换

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

与此一

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

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

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top