Array中的随机项 - 找不到变量:getElementById

时间:2014-08-19 13:21:28

标签: javascript arrays random getelementbyid src

我意识到这一点,并且已存在类似的问题/答案。但我现在看了很多,只是不确定我做错了什么简单的事情。我刚刚掌握了这一点。 我有错误"无法找到变量:getElementById"我尝试更改脚本和HTML的顺序。 我使用了这个随机方法,它工作正常Get random item from JavaScript array它只是将它应用于src ...

此视频也很有用https://www.youtube.com/watch?v=pqLS4oyJ8cA

这是我的代码:http://jsfiddle.net/udkhpytm/

<div>
<script id="IntroAnimation" type="text/javascript" charset="utf-8" src=""></script>
</div>

<script type="text/javascript">
var my_array = ['FILE1', 'FILE2', 'FILE3'];
var ri = Math.floor(Math.random() * my_array.length); // Random Index position in the array
getElementById("IntroAnimation").src = ri;
</script>

我试图从数组中获取一个随机项,并通过脚本ID将其放在我脚本的src中。

2 个答案:

答案 0 :(得分:5)

getElementById是属于the document object的方法。它不是一个独立的功能。变化:

getElementById("IntroAnimation").src = my_array[ri];

要:

document.getElementById("IntroAnimation").src = my_array[ri];

请注意,我还将ri更改为my_array[ri],否则您将作为src而不是数组内容传递到索引位置那个具体的位置。

答案 1 :(得分:1)

你需要从数组中获取该项,你所做的只是根据数组长度得到一个随机数。

var my_array = ['FILE1', 'FILE2', 'FILE3'];
var ri = Math.floor(Math.random() * my_array.length);
var file = my_array[ri];

然后您需要在document之前添加getElementById

doucment.getElementById("IntroAnimation").src = file;