我確定我的代碼存在一些問題。我不知道如何混合原始的JavaScript與我的jQuery。這裏是我的js文件中的相關代碼:jQuery不按預期執行功能
$(document).ready(function() {
$('#show-video').click(function(event) {
jQuery('.player-hold').slideDown("slow");
$('#book').slideDown('slow', function() {
playVideo();
});
jQuery('.features').slideUp("slow");
});
});
function onPlayerStateChange(newState) {
if(newState == 0) {
jQuery('.player-hold').slideUp("slow");
jQuery('.features').slideDown("slow");
}
}
function playVideo() {
if (ytplayer) {
ytplayer.playVideo();
}
}
function onYouTubePlayerReady(playerId) {
ytplayer = document.getElementById("ytPlayer");
ytplayer.addEventListener("onStateChange", "onPlayerStateChange");
ytplayer.setPlaybackQuality("highres");
ytplayer.cueVideoById("PoTa2FTmDWk");
}
基本上我有一個div的鏈接可查看視頻。當點擊鏈接時,會顯示視頻(以前不顯示任何內容),並且包含隱藏鏈接的div。這工作正常。最後一部分是視頻結束視頻滑動和div容器回來,這一切都有效。問題是,一旦顯示視頻,我想執行播放視頻。這不起作用。
我確定它是一個簡單的修復/ nooby錯誤。
PS。如果我刪除jQuery並添加函數playVideo();點擊錨點時,它按預期播放視頻,但失去滑動功能。
只是一個小風格點:你應該堅持一個單一的方式來尋找JQuery對象。無論是'$'還是'jQuery'。 – nfechner
你能發表一個工作代碼的例子嗎?它比'onclick =「playVideo();」'? –
你在線「ytplayer.playVideo()」中收到控制檯錯誤嗎?該功能是否被調用?如果您使用FF,您可以打開JavaScript控制檯並檢查(我認爲它在工具菜單中),或者您可以安裝或使用Firebug。如果您使用Google Chrome,則可以在扳手 - >工具菜單中找到該控制檯。 – rav