这是我的代码:
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<title></title>
<script>
$(document).ready(function(){
$("#video").html('<object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/HPPj6viIBmU&hl=en_US&fs=1&"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/HPPj6viIBmU&hl=en_US&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object>');
});
</script>
</head>
<body>
<div id="video"></div>
</body>
</html>
它适用于 Firefox 和 Chrome,但在 IE6 中有些地方不太正确。遗憾的是,项目要求之一是支持此浏览器,因此即使它在 IE7 中工作,我也需要解决这个问题。
我知道有 SWFObject,但我不想使用它(我们已经加载了一堆 JS 文件,我们不想要更多)。
即使这样也行不通:
<script>
document.write('<object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/HPPj6viIBmU&hl=en_US&fs=1&"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/HPPj6viIBmU&hl=en_US&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object>');
</script>
IE6 似乎忽略了 <object>
标签,这是它嵌入的代码。
<EMBED src=http://www.youtube.com/v/HPPj6viIBmU&hl=en_US&fs=1& width=480 height=385 type=application/x-shockwave-flash allowfullscreen="true" allowscriptaccess="always"></EMBED>
有解决办法吗?
谢谢。
最佳答案
您寻找的解决方法将以您编写 swfobject 的等价物而告终,只是它不会经过很好的测试或执行得很好。既然现有的解决方案非常好,为什么还要重新发明轮子,尤其是当它缩小到只有 10KB 时?如果您不想添加另一个 http 请求,为什么不将 swfobject 代码滑入页面或另一个 js 文件中。
我从不使用 swfobject 以外的任何东西来嵌入 flash。
关于javascript - 在没有 SWFObject 的 IE6 中使用 jQuery 嵌入 YouTube 视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2313142/