我目前正在使用 Video JS 来提供视频文件,并且视频源会根据访问者点击的项目而变化。当我的页面加载时,我运行以下代码将 videoplayer 对象绑定(bind)到一个变量。
var videoPlayer = _V_("my_video_1");
这在除 IE7 和 IE8 之外的所有浏览器中都能完美运行。我一直在调试我的代码,它似乎卡在了永远不会触发的就绪事件上。尽管它不会在控制台中留下任何错误。但是 ready 函数内的任何警报或操作都将被忽略,并且实际上是在那个时候源正在被修改。这是我用来更改源代码的代码:
videoPlayer.ready(function(){
var myPlayer = this;
myPlayer.src([
{ type: "video/mp4", src: videoFile + ".mp4" },
{ type: "video/ogg", src: videoFile + ".ogv" }
]);
myPlayer.play();
myPlayer.volume(0.2);
$('div#videoViewer').show();
});
我一直在其他两个页面上使用相同的代码,而且没有任何问题让它工作。现在,我和一位同事已经对此进行了数小时的调试,但离解决方案还差得很远。
这里有没有人知道什么可能导致就绪事件被忽略? 我一直在尝试禁用所有其他脚本以找到问题的根源,但一直没有奏效。
非常感谢任何可以帮助我解决此问题的答案。
最佳答案
我遇到了同样的问题。在我的例子中,就绪事件不会在 IE8 中触发,因为我有一个设置为 display:none
的包装器 div。如果包装可见,则 ready 事件将按预期触发。 IE9没有出现这个问题。
关于javascript - 视频 JS 就绪事件和 IE8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10878430/