0

WordPress テーマで動作する jQuery コードがいくつかあります。jQuery プラグインではなく、独自の関数を追加しようとすると、プラグインEvery Calendar +1の javascript が壊れる可能性があります。カレンダーは表示されません。

自分の機能は

var get_px_int = function(px_string) {
            px_string.replace('/[a-zA-Z]/', '');
            px_string = parseInt(px_string);
            return px_string;
        }

そして、私はそれをこのように使用しようとしています

$('#branding').css({
  "min-height" : $("#header-slideshow li").height()
                 + get_px_int($("#header-slideshow").css('margin-top'))
                 + get_px_int($("#header-slideshow li").css('font-size'))*5
});

要素の他の高さに基づいて最小高さが必要ですが、height() は「px」を返します。テキストを削除して整数としてキャストし、最小高を計算する方程式で使用する必要があります。これはすべて、本来あるべき方法で機能します。しかし、関数の宣言だけで、それを呼び出すことさえしないと、プラグインの JavaScript が壊れます。プロトタイプやクラスなどのような方法で関数をインスタンス化する必要があることはわかっています。関数をプラグインとして、オブジェクトとして試しました。コードはすべて ( foo = function() {} ); でラップされています。フー(); 私はアイデアが不足しています。

4

1 に答える 1

1

.replace(...)末尾の数字以外の文字を破棄するため不要partInt()であり、先頭の数字以外の文字があってはなりません。

試す :

var get_px_int = function(px_string) {
    return parseInt(px_string || 0) || 0;
};

したがって、

  • px_stringが定義されていない場合 (これは誤りです)、ゼロparseInt()を返します。
  • parseInt()返される場合NaN(これは誤りです)、関数はゼロを返します。

デフォルト値を好きな値に簡単に変更できます。

于 2013-01-13T01:16:29.613 に答える