2013-07-02 69 views
0

爲什麼這段代碼無法正常工作?Img onkeydown不工作

<img src="picture.jpg" id="picture"/> 

<script> 
document.getElementById('picture').onkeydown = function() {alert('tekst');} 
</script> 
+0

清單: 是函數的約束? 事件是否生成? 事件處理程序是否被調用? – Prasanth

+0

我認爲你必須通過講述'keydown',例如'39'來做更多的事情。 – Raza

回答

2

你的形象沒有焦點,所以它不會聽'onkeydown'事件。我不確定是否有可能爲了讓您的onkeydown事件發揮作用而提供圖像焦點。

相反,您可以將您的圖像放在一個可以聚焦的a標籤內,因此可以收聽onkeydown事件。

事情是這樣的:

<a id="picture" href="#"> 
    <img src="picture.jpg" /> 
</a> 

<script> 
    // The a tag 
    var picture = document.getElementById('picture'); 
    // You have to put focus on the atag (or any element that you want to have for you onkeydown event. 
    picture.focus(); 
    // Now your event will work 
    picture.onkeydown = function() { 
     alert('tekst'); 
    } 
</script>