0

特定の#idまたは.classが使用可能な場合にのみjqueryを機能させたい。どちらが正しいのか知りたい??? 助けてください...ありがとう

if($().flexslider) {
//do something
}

or

if ( $( '#flexslider' ).length && jQuery().flexslider ) {
//do something
}
4

3 に答える 3

2

長さをsafely使用して、DOM要素かどうかを判断しますexists

if ( $('#flexslider').length) //For item with id flexslider

また

if ( $('.classname').length) //For item with class classname

機能が存在するかどうかを確認するには

if ($.isFunction(window.yourFunName))        //with jQuery

if(typeof(callback) == "function")           //with javascript
于 2012-12-18T17:19:51.117 に答える
0

要素が存在し、flexslider プラグインがロードされていることを確認したい場合は、後者を実行します。

if ( $( '#flexslider' ).length && jQuery().flexslider ) {
    //do something
}

要素が存在するかどうかのみを確認したい場合は、次のようにします。

if($('#flexslider').length) {
    //do something
}
于 2012-12-18T17:21:19.133 に答える
0

ほとんどの場合、正しいことは見る人の目にあります。多くの場合、問題を解決するには複数の方法があります。バインドされた関数の存在と DOM ノードの存在を確認する場合は、関数の後で両方をキャプチャし、変数と関数readyを比較して、それが true かどうかを確認する必要があります。typeof

$(function(){
    if($('#flexslider').length && typeof flexslider == 'function'){

    }
});
于 2012-12-18T17:22:38.103 に答える