使用jQuery,螢火蟲,如果下面做一個接一個:jQuery foo.html(「<span> bar</span>」)不改變foo [0],那麼它是什麼意思?
foo = $('<div>foo</div>')
foo[0] // => <div>
foo.html('<span>bar</span>')
foo.html() // => "<span>bar</span>"
foo[0] // => <div>
$('body').prepend(foo) // => shows bar at top of page
令人奇怪的是foo.html()
顯示span
,但foo[0]
顯示div
...爲什麼不一致?看起來foo
成爲span
元素的jQuery包裝器。 foo[0]
不應該顯示span
也?
ah,ok,html()或innerHTML將替換該節點下的所有內容,如divOne.innerHTML =「click me」。 'div'仍然存在。只是'div'節點下面的所有內容都被更改了。有時很容易忘記,尤其是在喝完啤酒之後。 – 2010-07-29 03:58:43
@Jin Lin:繼續喝酒,你可能會到達鮑爾默高峯:http://xkcd.com/323/ :) – Faisal 2010-07-29 04:02:42