JQuery

2012-06-12 4 views
5

kullanarak video olayları bağlanılamıyor Bir video etiketi kullanıyorum ve bağlama veya bağlama kullanarak bağlama. Her iki durumda da çalışmıyor .Below benim kodum Yanlış bir şey yapıyorum ve onu yakalayamıyorum.JQuery

  <video width="videoWidth" 
      height="videoHeight" 
      poster="../Poster/poster.png" 
      id="videoId" 
      controls="controls" 
      muted="true"  
      seeking="true" 
      paused="true" > 

      <source src="../video/trailer.mp4" type="video/mp4"/>    
      <source src="../video/trailer.ogv" type="video/ogv"/> 
      <source src="../video/trailer.webm" type="video/webm"/> 
       Your browser does not support the video tag. 
      </video> 

İşte olayları ciltlemek için JS dosyası içerir.

$("#videoId").bind('ended',function() { 
      alert("Entered"); 
     }); 

GÜNCELLEME Şimdi önceki JS ve Olay Olay göre tetiklenecek edecek hata Etkinliğinde şaşırıp tüm video Events.Now yılı çalışma güncelleştiriyorum

ben yazma sırasında yanıldığımı olmak code.May kod ama hata olay değil working.Below benim JS konsolunda

$(document).ready(function(){ 
     $("#videoId").bind('play',function() { 
      alert("Play"); 
     }); 

     $("#videoId").bind('canplay',function() { 
      alert("Can Play"); 
     }); 

     $("#videoId").bind('empited',function() { 
      alert("Empited"); 
     }); 

     $("#videoId").bind('ended',function() { 
      alert("Ended"); 
     }); 

     $("#videoId").bind('loadstart',function() { 
      alert("Load Start"); 
     }); 

     $("#videoId").bind('pause',function() { 
      alert("Pause"); 
     }); 

     $("#videoId").bind('playing',function() { 
      alert("Playing"); 
     }); 

     $("#videoId").bind('progress',function() { 
      alert("Progress"); 
     }); 

     $("#videoId").bind('suspend',function() { 
      alert("Suspend"); 
     }); 

     $("#videoId").bind('volumechange',function() { 
      alert("Volume"); 
     }); 

     $("#videoId").bind('waiting',function() { 
      alert("waiting"); 
     }); 
     $("#videoId").bind('error',function(e,ui) { 
      switch (e.target.error.code) { 
      case e.target.error.MEDIA_ERR_ABORTED: 
       alert('You aborted the video playback.'); 
       break; 
      case e.target.error.MEDIA_ERR_NETWORK: 
       alert('A network error caused the video download to fail part-way.'); 
       break; 
      case e.target.error.MEDIA_ERR_DECODE: 
       alert('The video playback was aborted due to a corruption problem or because the video used features your browser did not support.'); 
       break; 
      case e.target.error.MEDIA_ERR_SRC_NOT_SUPPORTED: 
       alert('The video could not be loaded, either because the server or network failed or because the format is not supported.'); 
       break; 
      default: 
       alert('An unknown error occurred.'); 
       break; 
      } 
      //alert("Error Code : "+event.target.error.code); 
     }); 

     }); 

'al' alıyorum olduğunu.

+0

hata nesnede tüm nesneleri uyaracaktır. Kodunuz DOM hazır olay işleyicisinde çalışıyor mu? –

+0

konsoldaki herhangi bir hata mı? – Neil

+0

Evet, DOM hazır işleyicisinde çalışıyor. –

cevap

1

kullanmayı deneyin.

$ ("# videoId") bağlama ('hatası', function (e, ui) {burada ... işlevi ...}, true);

Bu, en azından hata işleyicinizi atmalı, ancak hata muhtemelen daha yüksek bir yayılmaya neden olabilir. Bir sonraki adım, asıl hatayı saptayarak olacaktır. Bu bağlantı yardımcı olacaktır:

https://developer.mozilla.org/en-US/docs/Web/API/EventTarget.addEventListener

3

Bu çalışmalıdır video öğesine

$("video").on("error", function(err) { 
    for (var i in err.currentTarget.error) { 
     alert(i + ": " + err.currentTarget.error[i]); 
    } 
});