我有一段文字和锚点。段落中的锚元素之间的文本
鉴于段落中的锚$myAnchor
,我可以得到一个紧接一个:
$nextAnchor = $myAnchor.next('a');
我如何获得这两个锚之间的文本/ HTML?
我有一段文字和锚点。段落中的锚元素之间的文本
鉴于段落中的锚$myAnchor
,我可以得到一个紧接一个:
$nextAnchor = $myAnchor.next('a');
我如何获得这两个锚之间的文本/ HTML?
在这里你去:
$myAnchor[0].nextSibling.nodeValue
现场演示:http://jsfiddle.net/3Xp6G/1/
所以,nextSibling
会给你一个参考到下一个兄弟节点(这是一个Text节点),然后是nodeValue
将返回该文本节点的文本内容。
[0]
顺便说一句之后$myAnchor
因为nextSibling
是DOM节点,而不是jQuery的对象的属性必需的,并且[0]
返回从jQuery对象的第一DOM元素。
您还可以在末尾使用.trim()
以摆脱无用的空白(如果有的话)。
谢谢。这个低级解决方案是跨浏览器吗? – Randomblue
@Randomblue是的。 –
要获得2锚之间的文本o可以做这样的事情。
var a1 = $('#anchor1');
var a2 = $('#anchor2');
var contents = a1.parent().contents();
var s, e;
for(var i = 0; i<contents.length; i++){
if($(contents[i]).is(a1)){
s = i
}
if($(contents[i]).is(a2)){
e = i
}
}
var text = contents.slice(s + 1,e).text().trim();
如果您知道只有一个元素betewwen u可以使用所描述的方法nextSibling
。
我认为这是你在找什么: http://stackoverflow.com/questions/481076/jquery-how-to-select-all-content-between-two-tags – Miquel