Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript SCRIPT5007:无法设置属性的值';href';:对象为null或未定义_Javascript_Php_Jquery_Html_Internet Explorer - Fatal编程技术网

Javascript SCRIPT5007:无法设置属性的值';href';:对象为null或未定义

Javascript SCRIPT5007:无法设置属性的值';href';:对象为null或未定义,javascript,php,jquery,html,internet-explorer,Javascript,Php,Jquery,Html,Internet Explorer,这段代码不适用于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"; arr

这段代码不适用于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>

美元(文件)。在(“准备就绪”,alternar_横幅);
array_imagen=新数组(2);
数组_imagen[0]=新图像(108225);
数组_imagen[0].src=“banner1.gif”;
数组_imagen[1]=新图像(108225);
数组_imagen[1].src=“banner2.gif”;
array_url=新数组(2);
数组_url[0]='http://www.google.com';
数组_url[1]='https://www.yahoo.com';
康塔多=0;
函数alternar_banner(){
window.document[“banner”].src=array\u imagen[contador].src;
window.document.links[“bannerref”].href=array_url[contador];
contador++;
contador=contador%数组长度;
setTimeout(“alternar_banner()”,6000);
}
返回带有href属性的锚的集合,如果没有与锚关联的
href
属性,则不会将其作为集合的一部分返回

links属性使用href属性的值返回文档中所有区域元素和锚元素的集合

所以可能有两件事:

  • 您要查找的元素的id/名称不是
    bannerref
  • 它没有
    href
    属性
问题更新后更新标记

这看起来像是IE中的
document.links
需要使用索引引用,例如:
window.document.links[0].href
,但你不能依赖于此,因为在此之前会出现更多的锚。如果这是唯一具有名称的锚点实例,请尝试使用以下命令:

 document.getElementsByName("bannerref")[0].href = array_url[contador];
或者将该锚的id设置为
bannerref

document.getElementById("bannerref").href = array_url[contador];
或者也可以使用jquery获取元素并将属性设置为该元素

更好地使用为
setTimeout

i、 e


缺少相关的HTML代码。您的DOM中是否有id为
bannerref
的链接?如果有,是否有href标记?谢谢大家。PSL,我按照你的建议做了,现在开始工作了。就像你说的,我使用getElementById和id,非常感谢你的提示。
   setTimeout(alternar_banner,6000);