gpt4 book ai didi

javascript - 脚本5007 : Unable to set value of the property 'href' : object is null or undefined

转载 作者:行者123 更新时间:2023-12-02 18:10:39 24 4
gpt4 key购买 nike

此代码不适用于 IE,但适用于 Chrome 和 Firefox。

我收到此错误消息 IE 控制台:SCRIPT5007:无法设置属性“href”的值:对象为 null 或未定义

<script>
$(document).on("ready", alternar_banner);

array_imagen = new Array(2);
array_imagen[0] = new Image(108,225);
array_imagen[0].src = "banner1.gif";
array_imagen[1] = new Image(108,225);
array_imagen[1].src = "banner2.gif";

array_url = new Array(2);
array_url[0] = 'http://www.google.com';
array_url[1] = 'https://www.yahoo.com';

contador = 0;

function alternar_banner(){
window.document["banner"].src = array_imagen[contador].src;
window.document.links["bannerref"].href = array_url[contador];
contador ++;
contador = contador % array_imagen.length;
setTimeout("alternar_banner()",6000);
}

</script>

<a name="bannerref" href="#"><img src="#" name="banner" width=108 height=225 border=0></a>

最佳答案

document.links返回带有 href 属性的 anchor 集合,如果您没有与 anchor 关联的 href 属性,则不会将其作为集合的一部分返回。

The links property returns a collection of all AREA elements and anchor elements in a document with a value for the href attribute.

所以可能有几件事:

  • 您要查找的元素的 ID/名称不是 bannerref
  • 它没有 href 属性。

标记问题更新后更新

似乎 IE 中的 document.links 需要使用索引来引用,例如: window.document.links[0].href 但你不能依赖它因为在此之前可能还会出现更多的 anchor 。如果这是具有该名称的 anchor 的唯一实例,请尝试使用以下内容:

 document.getElementsByName("bannerref")[0].href = array_url[contador];

或者为该 anchor 提供一个 ID 作为 bannerref:

document.getElementById("bannerref").href = array_url[contador];

或者您也可以使用 jquery 来获取元素并为其设置属性。

最好采用给setTimeout提供函数引用的做法

   setTimeout(alternar_banner,6000);

关于javascript - 脚本5007 : Unable to set value of the property 'href' : object is null or undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19734975/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com