0

私はこのjsfiddleを持っています。

スクリプトを上部パネルから下部パネルに移動すると、スクリプトが機能しなくなります。jQuery を使用してボタンをターゲットにできないのはなぜですか? jQuery が機能しないため、バニラ JavaScript を使用する必要があります。

何か案は?

4

2 に答える 2

3

JSFiddle では、左側のパネルのスクリーンショットで、スクリプトを配置する場所を選択できます。デフォルトではonload、head 内のイベントにラップされます。デフォルトでは、Mootools ライブラリがロードされます。

YouTube Player API がデフォルト設定で機能しない理由は、API がグローバル onYouTubePlayerAPIReadyイベントの定義を想定しているためです。コードがonloadイベントにラップされると、関数はグローバルではなくなります。

解決策は、JSFiddle: Use no wrap (body)and jQuery 1.7.2: http://jsfiddle.net/4WPmY/12/を適切に使用することです。

別の解決策は、推奨されるものほど良くありませんが、次onYouTubePlayerAPIReadyのプロパティとして設定してグローバルに定義することですwindow: http://jsfiddle.net/4WPmY/13/

window.onYouTubePlayerAPIReady = function () {
于 2012-07-01T17:39:42.307 に答える
0

jsFiddle の左ペインの「Choose Framework」セクションでno wrap (body)、DOM がロードされた後に JS パネルが実行されるように最初の設定を変更する必要があります。jQuery 1.7.2そのライブラリを使用する場合は、2 番目のオプションも変更する必要があります。

更新されたフィドル: http://jsfiddle.net/Marcel/4WPmY/11/

于 2012-07-01T17:38:35.570 に答える