2017-06-18 73 views
0

我在我的DOM中有一个音频元素。 我执行以下命令,好像click事件不会触发因为某些原因:Click事件不会触发Chrome中的音频元素

$0.addEventListener('click',function(){console.log('click')}); 

,当我试图将它的工作如预期鼠标悬停处理程序:

$0.addEventListener('mouseover',function(){console.log('mouseover')}); 

在Firefox中点击事件正常工作。 任何想法?

回答

0

直接,它不会工作。

您将需要添加一个shimified div aroudn它来获得点击事件。

的Javascript:

function onAudioElClick() { 
    console.log('click'); 
} 

HTML:

<div onclick="onAudioElClick()" style="position:absolute; z-index:9999; width:300px; height:30px;"></div> 
<audio></audio>` 
+0

我实际上不想要t o更改html。你是说这是一个铬的错误? –

+0

这是一个理想的行为。 – gauravmuk

+0

为什么?它没有记录,音频元素不会触发点击事件,并在Firefox中的作品... –

0

这是非常奇怪的是,mouseover作品,但click没有。

如果您将包裹里面像div其他元素audio元素,那么你可以处理click事件:

的JavaScript:

<div> 
    audio element 
    <audio src="http://developer.mozilla.org/@api/deki/files/2926/=AudioTest_(1).ogg" autoplay></audio> 
</div> 

HTML:

var el = document.querySelector("div"); 
el.addEventListener('click',function(){console.log('click')}); 

https://jsfiddle.net/b3sbmqpj/

相关问题