JavaScript (jQuery)
function display_youtube(new_url) {
$('#movie_url').removeAttr('value');
$('#embed_url').removeAttr('src');
$(document).ready(function() {
$('#movie_url').attr('value', new_url);
$('#embed_url').attr('src', new_url);
$('#shade').css('display', 'block');
$('#youtube_player').css('display', 'block');
$('#exit_youtube').css('display', 'block');
});
}
HTML
<object width="720" height="480">
<param id="movie_url" name="movie" value="http://www.youtube.com/v/_eaToCSn7yU?f=user_uploads&app=youtube_gdata&autoplay=0" />
<param name="allowFullScreen" value="true" />
<param name="allowscriptaccess" value="always" />
<embed id="embed_url" src="http://www.youtube.com/v/_eaToCSn7yU?f=user_uploads&app=youtube_gdata&autoplay=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="720" height="480" />
</object>
超链接
<a href="javascript:display_youtube('http://www.youtube.com/v/_eaToCSn7yU?f=user_uploads&app=youtube_gdata&autoplay=1');">Click Here for Fun!</a>
我所做的是为我的用户频道上的视频解析 YouTube 的 API。
上面的超链接是 php 生成的,用于触发上述 JavaScript 函数,并从 ids“movie_url”和“embed_url”中包含的属性交换 url,就像在 FF 中一样,但 IE 它只会执行 .css 命令。
我的猜测是 IE 不喜欢我为 PARAM 和 EMBED 分配 ID。