我在页面上加载了所有内容.最后,我有这个脚本.
<script type="text/javascript">loadNewVideo('u1zgFlCw8Aw',0)</script>
Run Code Online (Sandbox Code Playgroud)
它不起作用.但如果我用它替换它,它的工作原理:
<input type="submit" onclick="loadNewVideo('u1zgFlCw8Aw',0);" >
Run Code Online (Sandbox Code Playgroud)
在.JS文件中,这是函数:
function loadNewVideo(id, startSeconds) {
alert('In-the-function');
if (ytplayer) {
alert('Found-ytplayer');
ytplayer.loadVideoById(id, parseInt(startSeconds));
}
}
Run Code Online (Sandbox Code Playgroud)
显然,"ytplayer"在第一个中是假的!??
我不知道是什么ytplayer,但我想这个问题与DOM没有完全加载有关.你试过这个吗?
<script type="text/javascript">
$(document).ready(function() {
loadNewVideo('u1zgFlCw8Aw', 0);
});
</script>
Run Code Online (Sandbox Code Playgroud)
编辑:如果这不起作用,您将不得不向我们提供更多信息.正如蒂姆和彼得在评论中问你的问题,你能告诉我们在哪里ytplayer定义它是什么?我假设它代表YouTube播放器,也许它是在你打电话后加载/定义的loadNewVideo?
例如,如果上面的代码片段位于ytplayer文档中定义的部分之上,则在ytplayer加载之前仍会调用它,具体取决于您加载它的方式.正如我所说,请提供更多信息.