Javascript 段落中锚定元素之间的文本
我有一段文字和锚 在段落中给定一个锚Javascript 段落中锚定元素之间的文本,javascript,jquery,Javascript,Jquery,我有一段文字和锚 在段落中给定一个锚$myAnchor,我可以立即得到以下一个: $nextAnchor=$myAnchor.next('a') 如何获取这两个锚定之间的文本/HTML?编辑:误解问题 请看这里: 使用.contents()给你: $myAnchor[0].nextSibling.nodeValue 现场演示: 因此,nextSibling将为您提供对下一个同级节点(文本节点)的引用,然后nodeValue将返回该文本节点的文本内容 顺便说一句,[0]在$myAnchor之后是
$myAnchor
,我可以立即得到以下一个:
$nextAnchor=$myAnchor.next('a')代码>
如何获取这两个锚定之间的文本/HTML?编辑:误解问题
请看这里:
使用.contents()给你:
$myAnchor[0].nextSibling.nodeValue
现场演示:
因此,nextSibling
将为您提供对下一个同级节点(文本节点)的引用,然后nodeValue
将返回该文本节点的文本内容
顺便说一句,[0]
在$myAnchor
之后是必需的,因为nextSibling
是DOM节点的属性,而不是jQuery对象,并且[0]
从jQuery对象返回第一个DOM元素
您还可以在结尾使用.trim()
来清除无用的空白(如果有)。在两个锚之间获取文本,您可以执行类似的操作
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();
var a1=$(“#主播1”);
变量a2=$(“#主播2”);
var contents=a1.parent().contents();
变量s,e;
对于(var i=0;我认为这就是您要寻找的:它返回的是锚文本,而不是两个锚文本之间的文本。谢谢。这个低级解决方案是跨浏览器的吗?