js 每秒从数组中提取一个元素并输出,求代码
新年好!各位请帮忙,实在没办法了。现有一个数组vara=newarray("手机","电话","手表","铅笔","毛巾"),怎样实现一下想法:在一个A.php页面中,点...
新年好!各位请帮忙,实在没办法了。现有一个数组var a= new array("手机","电话","手表","铅笔","毛巾"),怎样实现一下想法:在一个A.php页面中,点击“开始”按钮,弹出<div id="div1"></div>,并在该<div>中,把从上述数组中随机但不重复提出3个元素,每秒增加一个显示出来。如,第一秒显示“铅笔”,第二秒显示“铅笔,电话”,第三秒显示“铅笔,电话,毛巾”。(最好用js写)
我自己写的,可就是没反应,错在哪里?
<script type="text/javascript" language="javascript">
var temp_array = new Array("火车","飞机","电池","油条","筷子","铅笔","剪刀","橡皮");
function cs(){
for(var i=0;i<8;i++)
{
var leg = temp_array.length -1;//减1是防止最大数溢出
var num = Math.floor(Math.random()*leg);//产生一个随机整数
if(num<0) {num=0;}
var return_arr = temp_array.splice(num, 1);;//随机移除一个字符,并把删除的值赋给变量return_arr
document.write(return_arr[i]+" ");
}
setTimeout(cs(),1000);
}
</script> 展开
我自己写的,可就是没反应,错在哪里?
<script type="text/javascript" language="javascript">
var temp_array = new Array("火车","飞机","电池","油条","筷子","铅笔","剪刀","橡皮");
function cs(){
for(var i=0;i<8;i++)
{
var leg = temp_array.length -1;//减1是防止最大数溢出
var num = Math.floor(Math.random()*leg);//产生一个随机整数
if(num<0) {num=0;}
var return_arr = temp_array.splice(num, 1);;//随机移除一个字符,并把删除的值赋给变量return_arr
document.write(return_arr[i]+" ");
}
setTimeout(cs(),1000);
}
</script> 展开
1个回答
展开全部
var al = a.length;
function readA(){
if (al == 0) return;
var i = Math.ceil(al*Math.random());
$('#div1').append(a[i]);
al -- ;
setTimeout(readA,1000);
}
readA();
更多追问追答
追问
浏览器不断加载,不出现提取的元素, $('#div1').append(a[i]);看不懂
追答
我用jquery写的
你是不是没引入jquery包
如果不适用jquery,需要把选择器$改成
document.getElementById
把 append也要换成原生的方法
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询