JavaScript运行时错误:无法设置未定义或空引用的属性'src' [英] JavaScript runtime error: Unable to set property 'src' of undefined or null reference

查看:542
本文介绍了JavaScript运行时错误:无法设置未定义或空引用的属性'src'的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我收到标题中提到的错误,该错误在下面的代码中引用了 document.slideshow.src = NewImg [ImgNum]; ,我不确定如何修复它。


 NewImg = new Array(
" annual / slide1.png",
" annual / slide2.png",
" annual / slide3.png",
" annual / slide4.png",
" annual / slide5.png",
" annual / slide6.png",
" annual / slide7.png",
" annual / slide8.png" ,
" annual / slide9.png",
" annual / slide10.png",
" annual / slide11.png",
" annual / slide12。 png",
" annual / slide13.png",
" annual / slide14.png",
" annual / slide15.png",
" annual / slide16.png",
" annual / slide17.png",
" annual / slide18.png",
" annual / slide19.png",
" annual / slide20.png",
" annual / slide21.png",
" annual / slide22.png" ;,
" annual / slide23.png",
" annual / slide24.png",
" annual / slide25.png",
" annual / slide26 .png",
" annual / slide27.png",
" annual / slide28.png",
" annual / slide29.png",
" year /slide30.png" ;,
" annual / slide31.png",
" annual / slide32.png",
" annual / slide33.png",
" ;全年/ slide34.png"
);



var ImgNum = 0;
var ImgLength = NewImg.length - 1;
//幻灯片之间的时间延迟(以毫秒为单位)
var delay = 3000;
var lock = false;
var run;



函数chgImg(方向){
if(document.images){
ImgNum = ImgNum + direction;
if(ImgNum> ImgLength){
ImgNum = 0;
}
if(ImgNum< 0){
ImgNum = ImgLength;
}
document.slideshow.src = NewImg [ImgNum];
}
}


函数auto(){
if(lock == true){
lock = false;
window.clearInterval(run);
}

else if(lock == false){
lock = true;
run = setInterval(" chgImg(1)",delay);
}
}

引用代码的HTML是:



< img src =" annual / slide1.png" ID = QUOT;幻灯片" alt ="年度幻灯片>&
   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < div id =" tableslide">

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < table>

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < tr>

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < td>< a href =" javascript:chgImg(-1)">⇐< / a>< / td>

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < td>< / td>

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < td>< / td>

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < td>< / td>

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < td> |< / td>

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < td>< / td>

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < td>< / td>

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < td>< / td>

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < div id =" buttonposition">  
 

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < div id =" button">

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < input
type =" button"值= QUOT;复位" ID = QUOT; button1的" onClick =" location.reload(true)">

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < / div>

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;< / DIV>&NBSP;&NBSP;  

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < td>< a href =" javascript:chgImg(1)">⇒< / a>< / td>

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < / tr>

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;  < / table>

   &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP; &NBSP;< / DIV>&NBSP;&NBSP;&NBSP;




解决方案

您的脚本正在尝试查找带有"名称"的元素属性"幻灯片放映"。由于一个不存在,您会收到错误。



您必须将html更改为

< img src =" annual / slide1.png" ID = QUOT;幻灯片"命名= QUOT;幻灯片" alt =" annual slide"> 

或将脚本更改为

 document.getElementById("幻灯片显示")。s​​rc = NewImg [ImgNum]; 


div的父元素是否应该是一个问题也是有问题的 p


I'm getting the error mentioned in the title which is referencing document.slideshow.src = NewImg[ImgNum]; in the code below and I'm not exactly sure how to fix it.

NewImg = new Array(
    "annual/slide1.png",
    "annual/slide2.png",
    "annual/slide3.png",
    "annual/slide4.png",
    "annual/slide5.png",
    "annual/slide6.png",
    "annual/slide7.png",
    "annual/slide8.png",
    "annual/slide9.png",
    "annual/slide10.png",
    "annual/slide11.png",
    "annual/slide12.png",
    "annual/slide13.png",
    "annual/slide14.png",
    "annual/slide15.png",
    "annual/slide16.png",
    "annual/slide17.png",
    "annual/slide18.png",
    "annual/slide19.png",
    "annual/slide20.png",
    "annual/slide21.png",
    "annual/slide22.png",
    "annual/slide23.png",
    "annual/slide24.png",
    "annual/slide25.png",
    "annual/slide26.png",
    "annual/slide27.png",
    "annual/slide28.png",
    "annual/slide29.png",
    "annual/slide30.png",
    "annual/slide31.png",
    "annual/slide32.png",
    "annual/slide33.png",
    "annual/slide34.png"
    );



    var ImgNum = 0;
    var ImgLength = NewImg.length - 1;
    //Time delay between Slides in milliseconds
    var delay = 3000;
    var lock = false;
    var run;



    function chgImg(direction) {
        if (document.images) {
            ImgNum = ImgNum + direction;
            if (ImgNum > ImgLength) {
                ImgNum = 0;
            }
            if (ImgNum < 0) {
                ImgNum = ImgLength;
            }
            document.slideshow.src = NewImg[ImgNum];
        }
    }


    function auto() {
        if (lock == true) {
            lock = false;
            window.clearInterval(run);
        }

        else if (lock == false) {
            lock = true;
            run = setInterval("chgImg(1)", delay);
        }
    }

The HTML that references the code is this:

<img src="annual/slide1.png" id="slideshow" alt="annual slide">
                            <div id="tableslide">
                                <table>
                                    <tr>
                                        <td><a href="javascript:chgImg(-1)">⇐</a></td>
                                        <td></td>
                                        <td></td>
                                        <td></td>
                                        <td>|</td>
                                        <td></td>
                                        <td></td>
                                        <td></td>
                                            <div id="buttonposition">    
                                                <div id="button">
                                                    <input type="button" value="Reset" id="button1" onClick="location.reload(true)">
                                                </div>
                                            </div>    
                                        <td><a href="javascript:chgImg(1)">⇒</a></td>
                                    </tr>
                                </table>
                            </div>   

解决方案

Your script is trying to find an element with a "name" attribute of "slideshow". Since one does not exist, you receive the error.

You must either change the html to

<img src="annual/slide1.png" id="slideshow" name="slideshow" alt="annual slide">

or change the script to

document.getElementById("slideshow").src = NewImg[ImgNum];

It is also questionable whether the parent element of a div should be a tr


这篇关于JavaScript运行时错误:无法设置未定义或空引用的属性'src'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆