0
  1. この例の domEle は何ですか? jQuery.com - jQuery.each( collection, callback(indexInArray, valueOfElement) ) で説明を見ることができますが、それでも「valueOfElement」とは何かを理解するのは難しいですか? 誰かが私のためにこれを少しクリアできますか?

    $("button").click(function () {
      $("div").each(function (index, domEle) {
        $(domEle).css("backgroundColor", "yellow"); 
        if ($(this).is("#stop")) {
          $("span").text("Stopped at div index #" + index);
          return false;
        }
      });
    });
    
  2. 次のように書くと: $("input[name='newsletter']").next().text(" is newsletter"); jquery は完全一致のみを検索し、次のように記述すると: $("input[name$='newsletter']").next().text(" is newsletter");jquery は完全一致を検索し、「ニュースレター」の値も言うことができますか?

  3. 著者は次のコードを使用します。

    $(document).mouseup(function(e) {
                if($(e.target).parent("a.signin").length==0) {
                    $(".signin").removeClass("menu-open");
                    $("fieldset#signin_menu").hide();
                }
            });      
    

    ユーザーがドキュメントの他の場所を押すたびにドロップダウンを非表示にします。if($(e.target).parent("a.signin").length==0) {私たちがここで何をしているのか完全には理解していないので、誰かこの行についてコメントしてもらえますか ? ここの元の記事: http://aext.net/2009/08/perfect-sign-in-dropdown-box-likes-twitter-with-jquery/

  4. 注意すべきデフォルトのメソッド呼び出しは?

チュートリアルの 1 つで、次のようなコメントを見つけました。

「最後に、CSS にマージンを含めないと、CSS メソッド呼び出しの結果が auto になり、適切に解析されないため、テキスト「auto」を数字の 0 に置き換える必要があります。」

var top = $('#comment').offset().top - parseFloat($('#comment').css('marginTop').replace(/auto/,0));

私は彼がここで何をしているのか完全には理解していないので、誰かこれについてコメントできますか?

ここの元の記事: http://jqueryfordesigners.com/fixed-floating-elements/

4

2 に答える 2

1

1) 反復要素 - 現在 によって処理されている要素eachです。コールバックに自動的に転送されます。(私はこのモデルが好きではありません。個人的には、コールバック$(this)内で使用することを好みeachます)。

2)前者はname属性が正確newsletterに である要素を見つけ、後者はname属性が で終わる newsletter要素を見つけます。の使用は$正規表現文法からの借り物です。(正規表現は完全に別のトピックです)。

3) これはイベント委譲の例です (あまり良い例ではありませんが、jQuery はこの例が示すよりもはるかに効率的にこれを処理できます)。イベント委任は、間違いなく検討すべきものです。

あなたが言及した行は、イベントのトリガー要素(イベントをトリガーした要素)に問い合わせ、その親を条件と照合します。

4)私はこの点にエネルギーを費やすつもりはありません.これは非常に非標準であり、特定のユースケースにローカライズされています.

于 2012-07-30T14:44:01.133 に答える
0

1.) $("div") は、ページ上のすべての div を選択します。それぞれがそれらのすべての div を反復処理します。反復ごとに、domEle はループが現在反復している div への参照になります。

2.) ^= は探しているものです。^= は、指定された文字列で始まるすべてを検索します。$= 指定された文字列で終わるすべてを検索します: http://api.jquery.com/category/selectors/

3.) e.target は、ユーザーがクリックした場所です。.parent("a.signin").length==0 は、親がクラス .signin のアンカーである場合に親を選択します。長さがゼロに等しいことを確認することは、何かが選択されているかどうかを確認することと同じです。基本的に、ユーザーがクラス サインインのアンカー内をクリックしなかった場合は、何かを行います。

4.) $('#comment').offset().top は #comment 要素の先頭からのオフセットを取得します。parseFloat($('#comment').css('marginTop').replace(/auto/,0)) は、要素の上端からのマージンを取得します。マージンが「auto」に設定されている場合、マージンは 0 であると見なされます。Parsefloat は、それが数値として処理されることを保証し、トップ オフセットから差し引かれます。これはカスタム コードであり、頻繁に使用または必要とするものではありません。

于 2012-07-30T14:48:32.617 に答える