2012-04-13 4 views
1

Я знаю, что это было рассмотрено раньше, но я недостаточно знаю о коде, чтобы применить другие решения к моей собственной проблеме, так как мой код отличается. Мое видео не является видео Youtube, его только в моих веб-папках.Video stop on div hide

В основном у меня есть видео, появившееся в div на автозапуске. Когда вы нажимаете скрытые виды, которые я хочу, но звук продолжает играть. Я просто хочу, чтобы видео перестало играть, когда div скрыт, и я не могу понять, как подключить правильный код. Если бы кто-то мог мне помочь, я бы очень признателен. Благодарю. Это мой сценарий:

<script type="text/javascript"> 
document.onclick=check; 
function check(e){ 
var target = (e && e.target) || (event && event.srcElement); 
var obj = document.getElementById('mydiv'); 
if(target!=obj){obj.style.display='none'} 
} 
</script> 


<div id="mydiv"><video autoplay><source src="socialphobiavideo.mp4"></video></div> 

ответ

1

Добавить id в свой <video> и использовать pause(), чтобы остановить его:

<script type="text/javascript"> 
document.onclick = function check(e){ 
    var target = (e && e.target) || (event && event.srcElement); 
    var obj = document.getElementById('mydiv'); 
    if(target != obj){ 
     obj.style.display='none'; 
     document.getElementById('myvideoelement').pause(); 
    } 
} 
</script> 


<div id="mydiv"> 
    <video id='myvideoelement' autoplay> 
     <source src="socialphobiavideo.mp4"> 
    </video> 
</div> 
+0

Я не уверен, JavaScript, так что я не знаю, куда ставить pause(). – Sarah

+0

@Sarah: Извините, я случайно использовал 'stop()' вместо 'pause()'. Приведенный выше код должен работать. – Zeta