【问题标题】:IE9 not playing updated video source which was injected through JQueryIE9 不播放通过 JQuery 注入的更新视频源
【发布时间】:2012-10-11 12:52:22
【问题描述】:

我为 HTML5 视频开发了一个 API。该插件的特点是查看器可以更改正在播放的视频。 (通过 JQuery 改变不同的源 url)。

我几乎完成了任务。但它不适用于ie9。让我在这里分享源文件。

$hdVideo.attr('src', videoAttr.src[i]);
gPlay();
createSeek();
createBuffer();
playerstage=0;

第一行将新的源文件注入视频元素。它在所有主流浏览器中都能完美运行,除了 ie9。我什至无法检查 ie9 中正在运行的 html 编码(当我们通过 js 进行一些更改时,它不会反映在检查元素中)。

链接在:http://iseofirm.net/appthateam/vel/static3/

【问题讨论】:

  • 当您在 ie9 浏览器中单击“hd”按钮时,您可以观看另一个视频吗?请与 chrome 交叉检查
  • 在 HD 下工作,但 IE9 显示相同的猎鹰视频,chrome 显示其他 1
  • 是的,这就是问题所在...我想在 IE9 中播放下一个视频...你能找到问题所在吗?
  • 但是我明白了……我自己得到了解决方案,终于!!!!!!问题:IE9 索引第一个 标签,即使我们通过 jQuery 将 src="" 注入
  • 祝你好运 :) 欢迎您,顺便说一句,您应该回答自己的问题并将其标记为正确

标签: javascript jquery html internet-explorer-9 html5-video


【解决方案1】:

我自己解决了,终于!!!!!!

问题: IE9 索引第一个标签,即使我们通过 jQuery 将 src="" 注入标签

解决方案: 当播放器启动时,将第一个“source”元素的“src”值注入标签。

if(firstTime)
    {
        $hdVideo.attr('src', videoAttr.src[0]);
        firstTime=0;
    }

然后编写函数将对应的“source url”注入到标签的src=""属性中...

var hdswipe = function(){
            var currVid, currExt, currVidName, currQuality, i;
            if($hdVideo.attr('paused')==false)
                playerstage=1;
            currVid = $hdVideo[0].currentSrc;
            currExt = currVid.substr(currVid.lastIndexOf('.') + 1);

            for(i=0; i<videoAttr.quality.length; i++) //Get current video quality
                if(currVid == videoAttr.src[i])
                    currQuality=videoAttr.quality[i];

            for(i=0; i<videoAttr.quality.length; i++) //Swipe the Video
            {
                if((currExt==videoAttr.src[i].substr(videoAttr.src[i].lastIndexOf('.') + 1))&&(currQuality!= videoAttr.quality[i]))
                {  
                    $hdVideo.attr('src', videoAttr.src[i]);
                    gPlay();
                    createSeek();
                    createBuffer();
                    playerstage=0;
                    break;
                }
            }
            if(currQuality == "sd")
                $("a.hd-hd-swipe-button").addClass("hd-hd-swipe-button-hd");
            else
                $("a.hd-hd-swipe-button").removeClass("hd-hd-swipe-button-hd");
            return false;
        }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-08
    • 2017-05-24
    相关资源
    最近更新 更多