2011-08-09 3 views
2

앵커가 포함되지 않은 링크 (예 : #) 만 선택하려고합니다. 어떻게해야합니까?'#'없이 링크 만 선택하는 방법은 무엇입니까?

+0

몇 가지 예를 제공하십시오 (여러 개가 바람직 함). 그들은 투표를 기꺼이 내려고합니다! –

+0

어떤 경우에 선택하려고하는지 구체적으로 알려주십시오. 앵커가'#'또는''''이 아닌 링크를 따르고 있습니까? 아니면 일반적으로 해시 태그를 제외하려고합니까? – zzzzBov

+1

모든 해시 태그 ... – BiberFiver

답변

0

사용이 코드 :

당신이 HREF = "#"을 필터링하려면 : 그렇지 않으면

$('a[href!="#"]') 

:

$('a').filter(function(){ 
    return !/#/.test(this.href);//you can filter what you do not want with the regex 
}) 
+0

"contains"! = "단지" – chelmertz

+0

-1 중 하나만 존재합니다. 불행히도이 방법은 작동하지 않습니다. - 전체 href가 포함되어 있지 않은 경우에만 작동합니다. –

+0

나는 신중하게 질문을 읽지 않았다. 내 업데이트를 참조하십시오. – Darm

3

이는 href 속성 시작하지 않는 모든 앵커를 선택합니다 #.

느린 선택기 일 수 있습니다. 한 번 또는 여러 번만 사용하고 있습니까? 당신은 좀처럼 속도를 높일 수 :

$('a').not('[href^="#"]'); 

당신은 또한 어디서든 #를 포함 앵커를 선택하지 않으려면, 시작에 불과 당신이 *^을 변경할 수 있습니다보다는. 그러나 이것은 또한 브라우저를 다시로드하는 링크를 선택하지 않습니다 (다른 페이지로 이동 한 다음 해당 페이지의 명명 된 앵커로 이동). 나는 네가 원한다고 생각하지 않지만 나는 지금 긍정적이지 않다.

+0

뭔가가 있습니까? –

+0

"포함"! = "는" – chelmertz

+0

으로 시작합니다. @PaulPRO : 아니요, "시작 ..."으로 시작합니다 ... – chelmertz

2

이 시도 :

$(':not(a[href*="#"])); 


이 빨라집니다 (뿐만 아니라 단지 앵커를 선택합니다) :

$('a:not([href*="#"])'); 
+0

이것은 정확하거나 $ ('a : not ([href * = "#"])) " – ghayes

+0

와 함께 [http://jsfiddle.net/K8zgH/5/](Fiddle) – ghayes

+0

그대로 그것도 앵커가 아닙니다. – Paulpro

2

내가 의해 너무 놀랐어요 대부분의 사람들은 요청한 것을 실제로하지 않기 때문에 모든 빠른 답변을 제공합니다. 에서 페이지 앵커/ID 태그 :

$('a:not([href*="#"])'); 

는 포함 "앵커"또는 내가 생각으로 영업 이익은 의미하지 않는 링크를 선택해야합니다.

관련 문제