它應該增加一個號碼給李權,所以第一個LI會在前面加上數字1,第二個李會在前面加上2等jQuery:爲什麼這個小函數不起作用?
也,是i = i+1;
和i++;
一樣嗎?如果不是,有什麼區別?
http://jsfiddle.net/nicktheandroid/U8byW/9/
它應該增加一個號碼給李權,所以第一個LI會在前面加上數字1,第二個李會在前面加上2等jQuery:爲什麼這個小函數不起作用?
也,是i = i+1;
和i++;
一樣嗎?如果不是,有什麼區別?
http://jsfiddle.net/nicktheandroid/U8byW/9/
你有一些很破,並在你的代碼搞砸簡單和雙引號,更何況,你正試圖修改i
可變過你的循環是不是一件好事。試試這樣:
$('li').each(function (index) {
$(this).append(
$('<span/>').addClass('commentnumber').text('#' + (index + 1))
);
});
或者如果你喜歡(但要小心的簡單和雙引號):
$('li').each(function (index) {
$(this).append('<span class="commentnumber">#' + (index + 1) + '</span>');
});
而且demo here。
這條線的問題是:
$(this).append("<span class="commentnumber"> #' i '</span>");
使用這個代替:
$(this).append("<span class='commentnumber'> #" + i + "</span>");
注意,字符串分隔符現配和使用+的以連接字符串。
當更新你的代碼,它的工作原理 - http://jsfiddle.net/U8byW/14/
是的,i = i + 1;
相同i++
單個行語句。
嘗試這種解決方案:http://jsfiddle.net/U8byW/10/
你有沒有和你分別的問題:
class="commentnumber"
,你打破了JS的字符串,導致錯誤(Uncaught SyntaxError: Unexpected identifier
)i
:jQuery爲你處理。但要回答你的問題,i = i + 1
和i++
是大致相同的事情,是的。區別在於i = i + 1
返回新值(添加了1的新值),而i++
返回舊值,然後將其加1。您也可以使用i += 1
或++i
。所有這些都是粗略的等同物。+
)與加法運算符(+
)相同,不像某些語言(例如PHP,其中級聯是.
)。希望這會有所幫助。
編輯:我意識到你爲什麼增加i
:讓行從1開始而不是0。忽略我說你不需要增加它。我沒有直截了當地想。
重新標記,我相信jQuery與Javascript有關:) – 2011-01-29 19:14:11