2017-01-03 20 views
2

同じクラスのすべてのページに要素のセットがありますが、すべてが異なるIDを持っています。私はランダムな要素を選択し、そのidを取得して別の関数で使用できるようにしたいと考えています。同じクラスの要素セットからランダムIDを選択

<div id="7469" class="element"> ... </div> 
<div id="0184" class="element"> ... </div> 
<div id="3986" class="element"> ... </div> 
<div id="1295" class="element"> ... </div> 
<div id="5704" class="element"> ... </div> 
and so on... 
+2

を参照してください。結果のオブジェクトとインデックスで特定の要素を1つ選択します。 –

答えて

0

インデックスをランダムに生成し、インデックスに基づいて要素を取得します。そのためにはMath.randomとjQuery eq()メソッドを使用してください。

var $ele = $('.element'); 
 

 
console.log($ele.eq(Math.floor(Math.random()*($ele.length - 1))).attr('id'))
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="7469" class="element">...</div> 
 
<div id="0184" class="element">...</div> 
 
<div id="3986" class="element">...</div> 
 
<div id="1295" class="element">...</div> 
 
<div id="5704" class="element">...</div>

0

まずelementクラスで、すべてのdivを集めます。

var elements = $(".element"); 

そして

var randomelement = elements[Math.floor(Math.random() * elements.length)]; 
var randomid = $(elements[randomelement].attr("id")) 
console.log(randomid) 

あなたは `$( '要素')を使用して選択した場合は`あなたがして0からの `length`に乱数を選ぶことができ、このSO question

関連する問題