請注意,下面是一個只有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