1
經過廣泛的研究,我找不到一個答案,我的(相當)低技能的JavaScript。如果你們中的任何一位能夠提供幫助,這將是一個很大的安慰如何運行相同的JavaScript函數
我想在同一頁面上運行這個腳本兩次,但我認爲問題是功能onYouTubePlayerReady不能被調用兩次,而不會被覆蓋的最後一次。 另外,如果我改變它的名字,實際的功能將不會被執行。
這是代碼。我希望它可以播放最多4個YouTube視頻,並且不會在同一頁面中自動播放聲音。你知道這有可能嗎?
感謝您的時間,而不是全局變量的
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Prova 1</title>
<script src="http://www.google.com/jsapi" type="text/javascript"></script>
<script type="text/javascript">
google.load("swfobject", "2.1");
</script>
</head>
<body align="center">
<div id="ytapiplayer2"></div>
<script type="text/javascript">
function onYouTubePlayerReady2(playerId2) {
ytplayer2 = document.getElementById("myytplayer2");
ytplayer2.playVideo();
ytplayer2.mute();
}
var videoID2 = "OFIhzSwDfwo"
var params = { allowScriptAccess: "always" };
var atts = { id: "myytplayer2" };
swfobject.embedSWF("http://www.youtube.com/v/" + videoID2 + "?enablejsapi=1&playerapiid=ytplayer\
&autoplay=1&version=3&showinfo=0&iv_load_policy=3&controls=0&modestbranding=1",
"ytapiplayer2", "250", "inherit", "0", null, null, params, atts)
</script>
<div id="ytapiplayer"></div>
<script type="text/javascript">
function onYouTubePlayerReady(playerId) {
ytplayer = document.getElementById("myytplayer");
ytplayer.playVideo();
ytplayer.mute();
}
var videoID = "e5iqtQLm-BM"
var params = { allowScriptAccess: "always" };
var atts = { id: "myytplayer" };
swfobject.embedSWF("http://www.youtube.com/v/" + videoID + "?enablejsapi=1&playerapiid=ytplayer\
&autoplay=1&version=3&showinfo=0&iv_load_policy=3&controls=0&modestbranding=1",
"ytapiplayer", "250", "inherit", "0", null, null, params, atts)
</script>
</body>
</html>
我看到一些*可能*有問題的事情,例如, 'ytplayer'是全局的,而不是函數本地的。此外,你讓這個函數接受一個參數,但它沒有使用它。你有兩個相同的代碼段。你是說用這兩種都行不通?或者,您是否對使用兩個視頻的原始'onYouTubePlayerReady'功能有問題? –
嗨felix,我應該讓他們本地解決它? –
正如我所說,我不知道,似乎有幾個問題。例如。你沒有ID爲'myytplayer2'或'myytplayer'的元素。 'onYouTubePlayerReady2'永遠不會被調用,因爲API不知道這個函數。 –