请注意,下面是一个只有IE浏览器问题(像往常一样...)CSS选择器作品,jQuery选择不(IE唯一的问题)
我有以下的HTML代码:
<input id="foo" type="checkbox" checked="checked" />
<label for="foo">
<span>some foo text</span>
</label>
我有一个可以正常使用CSS规则:
#foo + label > span{
display: block;
line-height: 1em;
padding: 0.4em 1em;
cursor: pointer;
text-align:center;
text-decoration:none;
}
我再有未返回任何相同的CSS选择器匹配该CSS选择器:
var textVal = $("#foo + label > span").text();
但由于某些原因,如果我使用下面的行,它会返回正确的值:
var textVal = $("#foo + label").html() or .text()
我真的要选择标签的跨度,是因为我想改变它的文本并且不希望每次都追加新的跨度。
谢谢
编辑:
有趣的是,如果我这样做它的工作原理...
var label = $("#foo + label");
var textVal = $(">span",label).text();
这是奇特... – BoltClock 2011-12-14 16:27:36