2017-02-14 6 views
-2

기본적으로 jQuery의 객체 $을 사용하면 전체 DOM 트리에서 선택기를 실행할 수 있습니다. 그러나 백본 (jQuery에 의존)을 사용하면 전체 (글로벌) DOM이 아닌 $에있는 선택기를 실행하고 로컬 백본보기 (백본보기에서는 this.$)에서 선택기를 실행할 수 있습니다. DOM 트리 전체를 가로 지르지 않고 그 부분 만 탐색하기 때문에 더 빠릅니다.jquery selector가 DOM 하위 트리 (백본에서와 같이)에서 실행됩니다.

질문은 : 순수 jQuery (백본 없음)에서이를 달성하는 방법은 무엇입니까? 코드 예제가 인정 될 것입니다.

+0

- 그것은 전문가가 아닌의 질문에 어떤 문제가 있는지에 노 코멘트와 함께 downvote합니다. – ducin

+0

Backbone의 소스 (및 문서)를 보면 Backbone이 단독으로 아무것도하지 않으며 백그라운드에서 jQuery 만있는 것을 볼 수 있습니다. 따라서 다운 보트는 아마도 연구 노력이 부족하고 아마 [mcve]가 부족할 수도 있습니다. –

+0

@EmileBergeron 그래서 규정에 맞지 않는 경우이 질문을 삭제하고 싶습니다. 답변 한 질문을 삭제하면 내 계정이 금지 될 수 있다고합니다. 무의미한 말. – ducin

답변

2

당신은 find 사용

도 있습니다
$(someElement).find("selector").doSomething(); 

가능성이 - 투 - 더 이상 사용되지-에서-몇 가지 단계 가끔 사람들이이 모양 사용하여 볼 형태 :

$("selector", someElement).doSomething(); 

...하지만 문자 그대로 모든 jQuery가 돌아서서 find으로 전화하십시오. 지정된 클래스와 범위에 대한 사업부 내에서 찾고

예 : 모든 downvoters에 대한

// Get the div 
 
var div = $("#the-div"); 
 

 
// Find the span within it, turn it green 
 
div.find(".foo").css("color", "green");
<div id="the-div"> 
 
    <span>Not this one.</span> 
 
    <span class="foo">This one.</span> 
 
</div> 
 
<div> 
 
    <span>Not this one.</span> 
 
    <span class="foo">Not this one either, despite it having the class; it's in the wrong div.</span> 
 
</div> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

+3

[Backbone docs] (http://backbonejs.org/#View-dollar)도 다음과 같이 말합니다. "실행하는 것과 같습니다 :'view. $ el.find (selector)'". –