我使用
Javascript解决方案异步加载youtube播放器API.
当滚动到其位置时,整个脚本应该播放视频.
它适用于所有浏览器以及IE(11),但有时在IE中我在开发人员工具中遇到错误:SCRIPT445(对象不支持此操作).
当滚动到其位置时,整个脚本应该播放视频.
它适用于所有浏览器以及IE(11),但有时在IE中我在开发人员工具中遇到错误:SCRIPT445(对象不支持此操作).
Youtube播放器仍然有效,但它似乎会崩溃其他脚本.我环顾网络,也在Stackoverflow上.似乎有其他人有类似的问题,但他们太具体了.也许有人可以帮我这个.以下是产生问题的代码部分:
var yt_int,yt_players={},initYT = function() { $(".ytplayer").each(function() { yt_players[this.id] = new YT.Player(this.id); <-- Error line }); }; $.getScript("//www.youtube.com/player_api",function() { yt_int = setInterval(function(){ if(typeof YT === "object"){ initYT(); clearInterval(yt_int); } },500); });
解决方法
在评估整个脚本之前,IE中存在竞争条件,即触发脚本加载器回调.通过使用setTimeout(initYT,0),您将允许脚本在触发初始化函数之前完成评估.很高兴它有效!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。