1

jQuery.proxy()私が探している機能のいくつかを持っていますが、理想的には私は次のようなことをしたいと思っています:

$('#some-id').context(function(){
    $('.some-class').show();
    $('li').css('background','red');
});

その効果は次のようになります。

$('#some-id .some-class').show();
$('#some-id li').css('background','red');

jQueryにはcontext上記のようなメソッドがありますか?

4

2 に答える 2

0

contextというメソッドがありますが、コンテキストを返します。jQueryでは、コンテキストを設定する場合は、オプションで2番目のパラメーターとしてjQueryセレクターに渡すことができます。これが例jQuery( selector [ , context ] )で、このように使用できます$("input:radio", document.forms[0]);

コンテキストの受け渡しについて詳しく知るにはhttp://api.jquery.com/context/

コンテキストの取得の詳細については、http://api.jquery.com/context/を参照してください。

于 2012-05-21T09:13:16.523 に答える
0

jQueryそれに最も近いのは、呼び出しでコンテキストを定義することです。

var $el = $('#some-id');
$('.some-class', $el).show();
$('li', $el).css('background','red');

チェーンを使用することもできます。

$('#some-id')
    .find('.some-class').show().end()
    .find('li').css('background','red');

どちらの場合も、'#some-id'改善点は、最初のセレクター(この場合)についてDOMに1回だけ照会することです。

于 2012-05-21T09:01:06.950 に答える