2012-04-15 121 views
1

我想用jQuery或直接javascript來選擇頁面上的所有<a>元素。如果錨點直接包含文本而沒有其他內容,那麼我只能選擇它。有沒有辦法只選擇文本節點?jQuery/JS只選擇直接包含文本的元素

+0

可能重複[?我該如何選擇使用jQuery文本節點( http://stackoverflow.com/questions/298750/how-do-i-select-text-nodes-with-jquery) – 2012-04-15 08:10:42

+0

請解釋更多...舉個簡單的例子。我不明白你的問題。 – 2012-04-15 08:12:43

回答

6

試試這個:$('a:not(:has(*))')

演示:http://jsfiddle.net/QAamN/

+0

優雅而簡單!謝謝!有用! – alt 2012-04-15 08:19:27

+0

不客氣! – stewe 2012-04-15 08:20:58

+0

等等......它的工作原理,但我不認爲我可以使用jQuery。我通過一個函數傳遞選擇器。所以我有這個: linkify('a:not(:has(*))') – alt 2012-04-15 08:24:53

3

您可以使用jQuery的過濾器的方法來實現這一

$("a").contents().filter(function() { 
    return this.nodeType == 3; 
}); 
+0

這是正確的解決方案。 notetype 3是文本節點。 – 2012-04-15 08:24:15

相關問題