2009-12-10 33 views
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(); 

..the碼以上.show()效果很好到底,但如果我將其更改爲.addClass('show')它不會工作。規範不無.show()工作 - jQuery的

我想給它一個類,而不是將float:left屬性應用於所有li項目而不是默認display:list-item。我該如何解決?

謝謝!

+0

你怎麼隱藏提示? – 2009-12-10 14:03:25

+0

對我評論的回覆?請更清楚您實際嘗試實現的目標 – jitter 2009-12-12 23:57:31

回答

1

喬丹的回答後:

您可以從li更換display:none然後添加類是這樣的:

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

你是如何隱藏元素的第一個地方?例如,如果您將它設置爲display: none,或者使用jQuery的hide(),它會執行相同的操作,那麼它將覆蓋其他地方定義的CSS,並將其隱藏,直到您將其刪除。如果你同時使用.show()(刪除display: none)和.addClass('show')(添加你的CSS類),它應該可以工作。

+0

我正在使用display:LI上沒有,是的。我需要改變什麼? – 3zzy 2009-12-10 14:08:44

0

嘗試更換

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

這個

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

這在技術上幾乎解決了這個問題,但是其他的li仍然隱藏起來。我希望這段代碼每次旋轉至少顯示7次,我在代碼中改變了什麼?謝謝! – 3zzy 2009-12-10 14:28:35

+0

咦?說實話,我不覺得你的評論與你提出的問題或你在那裏提供的信息有關。 「每輪」和「至少7裏」是什麼意思?請詳細說明你真正想要達到的目標。你目前的代碼是根據你的選擇器顯示1個隨機的「li」 – jitter 2009-12-10 23:38:58

0

而不是display: none,使用.addClass('hidden')/.removeClass('hidden')