確認方法を教えてくださいれば、特定のjQuery UIの機能を利用されている場合はいずれでも悪くなってしまいます。

StackOverflow https://stackoverflow.com/questions/3060886

質問

書いるjQueryプラグインという私のコードを活用しjQuery UI show(effect, [options], [speed], [callback])hide(effect, [options], [speed], [callback]) 機能することができ表示と非表示を切り替え要素敵なアニメーション

しかし、今も私がプラグインを劣化を優雅に合jQuery UIになると、スイッチング後の基本的な、使用してアニメーション化 show()hide() 機能の現在の標準jQuery APIに含まれています。

私は必要な試験のための表示と非表示を切り替え機能を具体的には、とてもjQuery UI 利用できるカスタム版ではなく、影響成分を含みます。

をしたいと考えることができないようなもの:

if(typeof myelement.show('blind', 'slow') == 'undefined')
{
    myelement.show('blind', 'slow');
}
else
{
    myelement.show();
}

もちろんのこなしている場合でもUIさん、 show() まだ機能において、異なる署名ので typeof を返します object ます。

では、どのニーズに合わせたサービスかチェックの場合は、jQuery UIの利用は私のプラグイン?のお役に立てるようよろしくお願いいたします!

役に立ちましたか?

解決

から確認することができますの効果のようになります:

function hasEffect(effect) {
    return $.effects && $.effects[effect];
}

を利用することができるもの:

if(hasEffect('blind')) {
  myelement.show('blind', 'slow');
} else {
  myElement.show();
}
//or, you can shorten it further:
//$.fn.show.apply(myelement, hasEffect('blind') ? ['blind','slow'] : []);​

の景色をお楽しみいただけdemoこちら, チェック/チェックを外jQuery UIの左側をクリックし"Run"トップで行動している。この作品が影響して宣言されたようになります:

$.effects.blind = function(o) { ...effecty stuff... };

例えば、 "盲目の"こちら.このチェックの両方の $.effects$.effects.effect 上記のコードはできるだけダウンロード 一部の 効果のダウンロードした場合は、jQuery UI, ので、この占めることである。

他のヒント

ニックの機能は完全に機能しました。一貫性のために、プラグインコード内からjQueryユーティリティ機能として追加することになりました。

$.extend({
    hasEffect: function (effect) {
        return $.effects && $.effects[effect];
    }
});

だから今私は電話することができます $.hasEffect(effectname) 特定のjQuery UI効果の存在を確認したい場所。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top