这在jQuery中甚至可能吗?
基本上我有两个div
<div class="first">
<a href="#">Some random link</a>,
<a href="#">second random link</a>,
<a href="#">other random link</a>
</div>
<div class="second">
<a href="#">second random link</a>
<a href="#">third random link</a>
<a href="#">tenth random link</a>
</div>
我想要的是,如果第二个div中的锚中的文本与来自第一个div的锚中的文本匹配(每个页面上不同),则运行jQuery(将类添加到包含第二个div中的锚中匹配的文字)。
答案 0 :(得分:5)
使用$.each()
循环第二个DIV中的锚点。然后,您可以测试其文本是否位于第一个DIV中的任何锚点中。
$("#doit").click(function() {
$(".second a").each(function() {
var text = $(this).text();
if ($(".first a:contains(" + text + ")").length) {
$(this).addClass("matched");
}
});
});
&#13;
.matched {
color: green;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="first">
<a href="#">Some random link</a>,
<a href="#">second random link</a>,
<a href="#">other random link</a>
</div>
<div class="second">
<a href="#">second random link</a>
<a href="#">third random link</a>
<a href="#">tenth random link</a>
</div>
<button id="doit">Click to test</button>
&#13;
答案 1 :(得分:1)
检查一下它会对你有用。
if($( ".first:contains('"+$('.second').text()+"')" ).length > 0) {
//apply your logic here..
}