我有一个身份"#post0"
和一个班级"reply"
当我这样做时:
var rep = ".reply";
$(rep).toggle(400);
所有具有“回复”类别的组件切换。
然而,当我这样做时:
var rep = "#post0.reply";
$(rep).toggle(400);
带有类回复和post0的元素没有任何反应......而不是切换它们
非常感谢帮助!
答案 0 :(得分:3)
获取“回复”类的所有元素
$(".reply")
示例:
<span class="reply">match</span>
返回id为“post0”的所有元素并且具有“回复”类。请注意,选择器之间没有空格。元素只有在具有所有“链式”选择器时才匹配
$("#post0.reply")
示例:
<span id="post0" class="reply">match</span>
返回所有具有“回复”类的元素,该类是id为“post0”的元素的后代,请注意选择器之间是否存在空格
$("#post0 .reply")
示例:
<div id="post0">
<span class="reply">span match</span>
</div>
答案 1 :(得分:2)
$("#post0.reply")
返回标识为post0
和类reply
的元素。
$(".reply")
返回具有类reply
的元素。
$("#post0 .reply")
返回类reply
的元素,这些元素嵌套在ID为post0
的元素下。
答案 2 :(得分:0)
以下JSFiddle对我有用:
当你说你的元素ID是“#post0”时;是ID字段中实际的哈希?尝试从id字段中删除哈希值;这样:
<p id="#post0"...
变为:
<p id="post0"...
将#前缀保留在javascript的ID中;这告诉JQuery它正在寻找一个ID;所以选择器应该仍然是:
var rep = "#post0.reply";