将 Flash youtube 更改为嵌入对象
Posted
技术标签:
【中文标题】将 Flash youtube 更改为嵌入对象【英文标题】:change flash youtube to embeded object 【发布时间】:2017-04-26 12:52:07 【问题描述】:我正在为我的 youtube 预告片使用延迟加载,但是我注意到它在移动设备上不起作用我认为这是因为它的 flash 不是对象?
这个函数床可以改成嵌入对象吗?
$('a.youtube-video').click(function(e)
e.preventDefault();
var videoId = $(this).attr('data-video');
var params = allowScriptAccess: "always", allowFullScreen: "true" ;
var atts = id: 'player_'+videoId ;
$(this).hide();
swfobject.embedSWF(
"http://www.youtube.com/v/"+videoId+"?enablejsapi=1&playerapiid=ytplayer&version=3",
'placeholder_'+videoId, "100%", "315", "8", null, null, params, atts);
);
任何帮助都会很棒...
这是完整的代码:
<script>$(document).ready(function()
$('a.youtube-video').each(function()
var videoId = $(this).attr('data-video');
var videoThumbnail = "http://img.youtube.com/vi/" + videoId + "/0.jpg";
var videoBackground = $('<span class="youtube-thumbnail"></span>');
videoBackground.css(
background:"#fff url('"+videoThumbnail+"') no-repeat",
backgroundSize: 'cover'
);
// also set the parent container size to prevent flicker
$(this).add($(this).parent()).css(
height:315,
width:"100%",
position:"relative",
display:"block",
textAlign:"center",
color:"#fff",
fontSize:26
);
$(this).text('Click to load video');
$(this).append(videoBackground);
);
$('a.youtube-video').click(function(e)
e.preventDefault();
var videoId = $(this).attr('data-video');
var params = allowScriptAccess: "always", allowFullScreen: "true" ;
var atts = id: 'player_'+videoId ;
$(this).hide();
swfobject.embedSWF(
"http://www.youtube.com/v/"+videoId+"?enablejsapi=1&playerapiid=ytplayer&version=3",
'placeholder_'+videoId, "100%", "315", "8", null, null, params, atts);
);
);
【问题讨论】:
【参考方案1】:$('a.youtube-video').click(function(e)
e.preventDefault();
var videoId = $(this).attr('data-video');
$("#player_" + videoId).html('<iframe src="https://www.youtube.com/embed/' + videoId + '" frameborder="0" allowfullscreen></iframe>');
);
【讨论】:
嗯,看起来它应该可以工作,但它没有做任何事情?我需要在我想要视频的地方制作一个 iframe 吗? 不,只需添加一个具有相应 id 的空 div 或即时创建它。 不确定为什么这不起作用...这是 div "; 啊,刚刚发现了div被称为占位符的问题_以上是关于将 Flash youtube 更改为嵌入对象的主要内容,如果未能解决你的问题,请参考以下文章