我在嘗試一個切換按鈕的js,於chrome、ff、safari、ie9中都可以執行,就唯獨ie8以下無法使用,請問有何大神可幫解惑?感謝!
-----------------------------------------------
function myNewSrc() {
var myVideo = document.getElementsByTagName('video')[0];
if (myVideo.canPlayType("video/mp4")) {
myVideo.setAttribute('src', 'VideoA.mp4');
}
else if (myVideo.canPlayType("video/webm")) {
myVideo.setAttribute('src', 'VideoA.webm');
}
myVideo.load();
myVideo.play();
}
-----------------------------------------------
顯示出'undefined' 是 null 或不是一個物件
位於這行的頭   --> if (myVideo.canPlayType("video/mp4")) {誰能幫幫我油~~

解决方案 »

  1.   

    canPlayType这个是什么方法?。。HTML5的? 这样的话。。IE9一下不支持HTTML5的
      

  2.   

    http://blog.csdn.net/zanos/article/details/7093786
      

  3.   

    var myVideo = document.getElementsByTagName('video')[0];
    if (myVideo.canPlayType("video/mp4")) {
    myVideo.setAttribute('src', 'VideoA.mp4');
    }
    问题应该在第一和第二句,你尝试下换个
      

  4.   

    undefined 未定义 或未初始化这样判断
    if (myVideo && myVideo.canPlayType && myVideo.canPlayType("video/mp4")) {
    myVideo.setAttribute('src', 'VideoA.mp4');
    }
      

  5.   

    var myVideo = document.getElementsByTagName('video')[0];
    应该是第一句没有获得myVideo 对象, ie8不支持html5的
      

  6.   

    变量,对象相当于一个关闭的盒子。如果打开箱子,发现里面没有放东西,那就是undefined如果箱子里没有放东西,但外面贴了个说明,告诉你箱子里没有东西,那就是null