2015-12-06 154 views
1

空值我試圖複製粘貼Mozilla的入門教程的Javascript代碼獲取有關querySelector

var myImage = document.querySelector('img'); 

myImage.onclick = function() { 
    var mySrc = myImage.getAttribute('src'); 
    if(mySrc === 'images/firefox-icon.png') { 
     myImage.setAttribute ('src','images/firefox2.png'); 
    } else { 
     myImage.setAttribute ('src','images/firefox-icon.png'); 
    } 
} 

我得到一個錯誤「無法設置屬性的‘onClick’空的」。如何更正代碼?

我剛開始使用JavaScript。請原諒我,如果這是我的一個愚蠢的錯誤。

+0

頁面中是否有一個img標記? –

+0

您是否在加載頁面後執行此操作? –

+0

根據mdn頁面,您沒有圖像「如果找不到匹配項,則返回null;否則,返回第一個匹配元素。」來源:https://developer.mozilla.org/en-US/docs/Web/API/Element/querySelector 你可以發佈你的HTML? –

回答

0

您可能會嘗試在呈現元素之前分配點擊處理程序,以便查詢選擇器無法找到img標記。嘗試執行腳本後,頁面呈現像這樣

window.onload = function() { 
    var myImage = document.querySelector('img'); 

    myImage.onclick = function() { 
     var mySrc = myImage.getAttribute('src'); 
     if(mySrc === 'images/firefox-icon.png') { 
      myImage.setAttribute ('src','images/firefox2.png'); 
     } else { 
      myImage.setAttribute ('src','images/firefox-icon.png'); 
     } 
    } 
}