[英]Trying to pick div randomly, but it echo empty div sometimes?
我正在嘗試隨機選擇div。 我的代碼中的唯一問題是,有時它會隨機選擇一個空的div。 我不明白為什么它有時會回顯一個空的div。 我使用chrome inspect元素進行檢查,沒有空的div。 我在foreach循環上做錯了什么。
var divs = $(".widget").get().sort(function(){ return Math.round(Math.random())-0.5; //so we get the right +/- combo }).slice(0,1); $(divs).show();
.widget{ display:none; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <?php foreach ($widgets as $widget){ echo'<div class="widget" >'; echo $content; echo'</div>'; } ?>
不需要任何奇怪的sort
功能就可以從jQuery集合中獲取隨機元素。 這是使用eq
的一種方法。
var $widgets = $('.widget'); var length = $widgets.length; var div = $widgets.eq(Math.floor(Math.random() * length)); div.show();
.widget { display: none; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="widget">1</div> <div class="widget">2</div> <div class="widget">3</div> <div class="widget">4</div> <div class="widget">5</div> <div class="widget">6</div> <div class="widget">7</div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.