我有以下代码,当正常工作时应该在 iframe 中打开链接 1,等待 3 秒,然后在 iframe 中打开链接 2,等待 3 秒,等等。
目前它直接跳到数组中的最后一个值(最后一个链接)。
有 JS 高手吗?
<html>
<head></head>
<body>
<a href="http://www.google.com">Google</a><br />
<a href="http://www.thinkgeek.com">ThinkGeek</a><br />
<a href="http://www.themetapicture.com">The Meta Picture</a>
<iframe src="http://www.google.com" id="myid" name="main" width="1024" height="768">
</iframe>
<script>
function getLinksArray() {
for (var i = 0; i < document.links.length; i++) {
var linx = document.links[i].href;
// create a closure for each loop iteration
(function(linx) {
setTimeout(function() {
openLinks(linx);
}, 3000);
}(linx));
}
}
function openLinks(link) {
document.getElementById("myid").src = link;
}
window.onload = getLinksArray();
</script>
</body>
</html>