无法理解为什么此代码将 DIV 元素的颜色更改为蓝色,但不更改 SPAN 元素的颜色。有什么想法吗?
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function(){
$("#prev ~ div").css("color", "blue");
$("#prev ~ span").css("color", "red");
});
</script>
</head>
<body>
<span id="prev">span#prev</span>
<div>div sibling</div>
<span>span sibling</span>
</body>
</html>
注意到如果我更换会怎样
<span id="prev">span#prev</span>
与
<p id="prev">span#prev</p>
DIV 和 SPAN 都会更改文本颜色。
谢谢!
最佳答案
看来您发现了一个错误。
$("#prev ~ span:not(#prev)") 有效,$("#prev").siblings("span") 也有效。
关于jquery - 无法选择 SPAN 同级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/793687/