2017-10-09 31 views
-1

我想將一個DOM元素設置爲變量,但是當我使用console.log()變量時,它顯示爲空。無法將DOM元素設置爲變量

var canvas = document.querySelector('canvas'); 
console.log(canvas); //null 

但它在我正在遵循的教程中工作完美。誰能幫我嗎?

+6

如果它爲空它不能找到該元素。您可能過早地調用了代碼,即在創建元素之前 –

+0

您共享的代碼沒有問題,因此如果您想要特定的答案,您可能需要分享更多。你的HTML是什麼樣的?劇本在哪裏打電話? –

+4

提供[mcve],以便我們驗證它。顯示的代碼沒有錯,除非沒有提供足夠的上下文 – charlietfl

回答

0

由於specification,querySelector()如果找不到匹配項則返回null。因此,您在嘗試獲取時沒有canvas節點。你應該

  • 確保您的HTML文檔具有canvas節點
  • 確保您的canvas節點設置爲HTML文檔

以下的HTML代碼將下班後運行腳本當然

<canvas id="myCanvas"></canvas> 
    <script> 
     var canvas = document.querySelector('canvas'); 
     console.log(canvas); 
    </script>