0

特定の jquery 選択で選択したアイテム/要素を確認することはできますか?

誰かが jquery のデモを行っているのを見ました。彼らは、選択ごとに項目の配列を返す何らかの形式のコンソールを使用していました。各項目にマウスを合わせると、ブラウザで強調表示されました。

私は現在 alert($('div').length); を使用しています。役に立たないものを選択したことを確認ます。

4

4 に答える 4

2

少し前に、この目的のために jquery プラグインを作成しました。これは、firebug のログ コンソールを使用して、jquery の選択をログに記録します。(Web 開発に Firebug を使用していない場合は、実際に検討する必要があります)

(function ($) {
    function logThis() {
        console.debug(this);
    }

    jQuery.fn.debug = function (msg) {
        console.group(msg || "no message");
        this.each(logThis);
        console.groupEnd();
        return this;
    };
})(jQuery);

それを使用するには、オプションのメッセージを指定して jquery の選択に対して debug を呼び出すだけです

$(".example").debug("nodes found")
于 2009-04-20T11:57:10.273 に答える
1

必要なのは、 Firebugとコード内の次の 1 行だけです。

console.log(<<myJQuerySelection>>);

例えば:

console.log($('div'));

結果の上にマウスを移動すると、ページ上で強調表示されます。

于 2009-04-20T12:15:54.410 に答える
1

これが純粋にデバッグ用である場合は、javascript コンソールにログを記録できます。

$('div').each(function() {
    console.log($(this).id);
})

注:まだ使用していない場合は、 firebugの使用を強くお勧めします。

于 2009-04-20T11:48:08.830 に答える
0

これらはすべて良い例です。私が行っていることの 1 つは、要素の周囲に境界線を作成することです。

$('div').css({border: '1px solid red'});

これにより、ブラウザで何が選択されているかを簡単に確認できます (一部の要素がビューポートから非表示になっている場合を除きます)。これは、Firebug がインストールされていない/有効になっていない場合にも便利です。

要素を 2 ピクセルずつ拡張しないように、おそらく CSS プロパティの「outline」を使用する必要があります。

于 2009-04-20T12:45:23.467 に答える