コードは.SHOW()なしでは動作しません - jQueryの
質問
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を上書きすると、あなたがそれを削除するまで、隠された、あなたの要素を保ちます。それはあなたが(自分のCSSクラスを追加する).show()
(display: none
を削除する)と.addClass('show')
の両方を使用する場合は動作するはずます。
交換してみてください
$("#showcase ul li:nth-child(" + ran + ")").show();
この1と
$("#showcase ul li:nth-child(" + ran + ")").addClass('show').show();
の代わりにdisplay: none
の、使用.addClass('hidden')
/ .removeClass('hidden')
所属していません StackOverflow