Javascript 如何在指定项之后使用getElementById获取标记内部?
如何获取Javascript 如何在指定项之后使用getElementById获取标记内部?,javascript,jquery,html,Javascript,Jquery,Html,如何获取 Text1 span Text1 span Text1 span 以下是输出内容: 我尝试使用document.get.Element.ByTagName,但我真的不知道如何将它用于紧跟在红色“span”之后的元素 也许,我应该使用jQuery?如果您要使用类,而不是内嵌CSS,您可以只使用CSS: .redStyle = { color: red; } .blueStyle { color: blue; } // style the elemen
Text1
span
Text1
span
Text1
span
以下是输出内容:
我尝试使用document.get.Element.ByTagName,但我真的不知道如何将它用于紧跟在红色“span”之后的元素
也许,我应该使用jQuery?如果您要使用类,而不是内嵌CSS,您可以只使用CSS:
.redStyle = {
color: red;
}
.blueStyle {
color: blue;
}
// style the elements:
.redStyle + br + a, /* multiple adjacent-sibling combinators are required
if you insist on retaining the 'br' elements */
.redStyle ~ a {
color: green;
}
当然,这需要HTML,例如:
<p>
Text1<br>
<span class="blueStyle">span</span><br>
<a href="http://google.com">Google</a>
</p>
<p>
Text1<br>
<span class="redStyle">span</span><br>
<a href="http://bing.com">Bing</a>
</p>
.警告他分离
tag@david-托马斯:你还没有理解我。我必须使用getElementById(或任何其他方法)获取标记内部文本。对不起,我的问题表述不正确。我已经更新过了。
<p>
Text1<br>
<span class="blueStyle">span</span><br>
<a href="http://google.com">Google</a>
</p>
<p>
Text1<br>
<span class="redStyle">span</span><br>
<a href="http://bing.com">Bing</a>
</p>
function follows(target, cName) {
while (target.previousSibling) {
if (target.previousSibling.className && target.previousSibling.className.indexOf(cName) > -1) {
return true;
} else {
target = target.previousSibling;
}
}
return false;
}
var links = document.getElementsByTagName('a'),
relevantLinks = [],
relevantText = [];
for (var i = 0, len = links.length; i < len; i++) {
if (follows(links[i], 'redStyle')) {
// this adds to the store of relevant links in which you're interested
relevantLinks.push(links[i]);
// you could act on them directly, but storing them
// allows for further use at a later time (if required)
}
}
for (var i = 0, len = relevantLinks.length; i < len; i++) {
// iterating over the relevant links/elements, pushing their text
// into another array to store that text
relevantText.push(relevantLinks[i]['textContent' || 'innerText']);
}
console.log(relevantText);
var links = document.getElementsByTagName('a'),
relevantLinks = document.querySelectorAll('.redStyle ~ a'),
relevantText = [];
for (var i = 0, len = relevantLinks.length; i < len; i++) {
relevantText.push(relevantLinks[i]['textContent' || 'innerText']);
}
console.log(relevantText);