Javascript 关于在触发点击事件时停止youtube视频的建议
我已经设置了一些测试代码,加载到youtube视频中,然后在我计划停止视频的链接上设置了一个jquery click事件,但是当我单击该链接时,我得到了错误:Uncaught TypeError:Object[Object Object Object]没有“stopVideo”方法 有人能告诉我这件事哪里出了问题吗Javascript 关于在触发点击事件时停止youtube视频的建议,javascript,jquery,youtube,youtube-api,Javascript,Jquery,Youtube,Youtube Api,我已经设置了一些测试代码,加载到youtube视频中,然后在我计划停止视频的链接上设置了一个jquery click事件,但是当我单击该链接时,我得到了错误:Uncaught TypeError:Object[Object Object Object]没有“stopVideo”方法 有人能告诉我这件事哪里出了问题吗 <div id="container"> <a href="#">This is the link</a> <br /&
<div id="container">
<a href="#">This is the link</a>
<br /><br />
<br /><br />
<div id="player"></div>
</div>
<script>
var tag = document.createElement('script');
tag.src = "http://www.youtube.com/player_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
// 3. This function creates an <iframe> (and YouTube player)
// after the API code downloads.
var player;
function onYouTubePlayerAPIReady() {
player = new YT.Player('player', {
height: '390',
width: '640',
videoId: 'u1zgFlCw8Aw'
});
}
function onPlayerReady(event) {
event.target.playVideo();
}
$(document).ready(function() {
$('a').click(function(e) {
player.stopVideo();
e.preventDefault();
});
});
</script>
var tag=document.createElement('script');
tag.src=”http://www.youtube.com/player_api";
var firstScriptTag=document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(标记,firstScriptTag);
// 3. 此函数用于创建(和YouTube播放器)
//API代码下载后。
var播放器;
函数onYouTubePlayerAPIReady(){
player=新的YT.player('player'{
高度:“390”,
宽度:“640”,
videoId:'u1zgFlCw8Aw'
});
}
函数onPlayerReady(事件){
event.target.playVideo();
}
$(文档).ready(函数(){
$('a')。单击(函数(e){
player.stopVideo();
e、 预防默认值();
});
});
您的代码片段可以按预期在应用程序中工作。此外,由于postMessage
实现的限制,YouTube帧API在文件://
协议下无法运行
我之前创建了YouTube API的自定义实现,可在上获得。我已经在文件://
协议中成功执行了停止视频
方法
如果您正在联机运行代码,我只能想到另一个原因:您试图在播放器准备就绪之前单击链接。要修复此问题,请合并您的函数:
function onPlayerReady(event) {
event.target.playVideo();
$('a').click(function(e) { //<--- Binds event to ALL anchors! Are you sure?
player.stopVideo();
e.preventDefault();
});
});
函数onPlayerReady(事件){
event.target.playVideo();
$('a')。单击(函数(e){//您的代码片段在a中可以正常工作。此外,由于postMessage
实现的限制,YouTube框架API在文件://
协议中无法正常工作
我之前创建了YouTube API的自定义实现,可在上获得。我已在文件://
协议中成功执行了停止视频
方法
如果您正在联机运行代码,我只能想到另一个原因:您试图在播放机准备就绪之前单击链接。若要修复此问题,请合并您的函数:
function onPlayerReady(event) {
event.target.playVideo();
$('a').click(function(e) { //<--- Binds event to ALL anchors! Are you sure?
player.stopVideo();
e.preventDefault();
});
});
函数onPlayerReady(事件){
event.target.playVideo();
$('a')。单击(函数(e){//