0

可能であれば JavaScript をビューから除外したいのですが、特定の状況ではそれが難しいことがわかりました。

対応する javascript (jplayer を使用) を持つビデオ パーシャルがあるとします。

_video.haml

.video
  content_for :javascript/head
    / jplayer instance code here

私が考えた1つの代替案は.video、別のjsファイル内からフックし、それを介してjplayerオブジェクトをインスタンス化することです。

ビデオ.コーヒー

$('.video').each
  # jplayer instance code here

私の質問は、「.video」が見つからないページはどうですか? 欠落している jquery finder が多数ある場合、問題が発生しますか?

4

1 に答える 1

1

.video の長さを確認して、存在する場合にのみ実行することができます

var $video = $('.video');
if(video.length !== 0){
     $('.video').each
     # jplayer instance code here
}

DOM 内のその jQuery オブジェクトの長さをチェックします

于 2013-10-14T17:16:48.830 に答える