2012-10-30 1 views
2

클릭 한 요소에 대해 가장 짧은 셀렉터를 얻으려면 어떻게해야합니까?
나중에이 선택기를 사용하여 동일한 (또는 거의 동일한) 결과를 복구하려고합니다.가장 짧은 셀렉터를 찾는 방법

기존 방법이 있습니까? 대한

내 아이디어에 대한 우선 순위로 검색 :

  1. 단일 사용 ID
  2. 다 사용 카운터
  3. 단일 사용하는 이름 카운터
  4. 다 사용하는 이름 ID
  5. 일회용 클래스 이름
  6. 복수 사용 클래스 이름 카운터
  7. 최단 경로 1. -6.

신뢰성과 유연성을 극대화하기 위해 짧은 경로를 만드는 방법 (예 : 새로운 상위 태그 또는 코드에서의 동작)을주의하지 마십시오.

+4

이것은 마크 업 구조에 크게 의존합니다. – undefined

+0

그리고 jQuery 선택기와 CSS 선택기에 대한 결과가 크게 달라질 것입니다. – BoltClock

답변

0

내가 같은 제안 :

요소가이 ID가있는 경우 그래서 당신의 선택은 #<id>
  • 을의 경우에 ID가없는 경우

    1. 는 참조 클릭

      생성을 임의의 식별자를 요소의 ID로 지정하면 선택자는과 같습니다.

    var selector = ''; 
    
    $('element').click(function() { 
        var self = $(this); 
        if(!self.is('[id]')) { 
         var id = 'ljhlihj'; // replace with code to generate random ID 
         self.attr('id', id); 
        } 
        selector = '#' + self.attr('id'); 
    } 
    
  • +1

    좋은 생각이지만,이 코드를 알 수없는 외국 웹 사이트에서 사용하고 싶습니다. 코드에 아무 것도 저장하지 마십시오. (그리고 매번 최신 라이브 버전을 사용하고 싶습니다) – terraloader