2013-06-05 40 views
0

这里是简单的jquery旋转字符串数组的Math.random()不应重复相同数量

$.fn.loadText = function(textArray, interval) { 
    return this.each(function() { 
     var obj = $(this); 
     obj.fadeOut('slow', function() { 
      obj.empty().html(random_array(textArray)); 
      obj.fadeIn('slow'); 
     }); 
     timeOut = setTimeout(function(){ obj.loadText(textArray, interval)}, interval); 
      if(!obj.is(':animated')) { clearTimeout(timeOut); obj.loadText(textArray, interval);} 
    }); 
} 

function random_array(aArray) { 
    var rand = Math.floor(Math.random() * aArray.length + aArray.length); 
    var randArray = aArray[ rand - aArray.length ]; 
    return randArray; 
} 

$(document).ready(function() { 
    var textArray = ["murali","prashanth","nutal","candy"]; 
    $('#mydiv').loadText(textArray, 5000); 
}); 

这是问题所在,新近产生的随机数不应该如先前产生它应该的同一个是新的号码,这样的字符串数组不应重复again.Let的说,如果murali产生再次murali不应该产生可能是其他字符串应该从array.Please显示帮助

JSFIDDLE LINK HERE

+0

http://stackoverflow.com/questions/6625551/jquery-math-random-number-without-repeating-a-previous-number?rq=1 – rahularyansharma

+0

应该在其阵列中的所有项目完成后循环? –

+0

不应该重复相同的字符串.. –

回答

0
  • (步骤1)删除一个数组项后随机选择的一个项目
  • (步骤2)重复步骤1,直到数组为空。