我正在製作一個小腳本來使HTML元素可編輯。當你點擊一個元素時,它會被替換爲一個textarea,並且你基本上可以輸入新的文本。當你按下回車鍵時,textarea被替換爲更新了innerHTML的原始元素。Chrome/IE表單元格定位幫助
腳本的演示是在這裏:http://iambot.net/demo/editable/
現在的問題是與內聯表編輯。它在FF 3.6上完美運行,但在Chrome/Safari中,一旦單元格的值被更新,更新的單元格的位置就會向右移動一個單元格的寬度(只需在Chrome/Safari中嘗試演示)。完全混淆了整個桌子。我是一名CSS初學者,無法確定我究竟在哪裏出錯。
任何幫助/指針表示讚賞!謝謝。
精美的作品!萬分感謝!雖然有一點疑問。爲什麼需要preventDefault和stopPropagation方法? – Checksum 2010-05-08 14:29:55
有兩個onClick處理程序作爲代碼的一部分,一個用於'document'和一個用於'.editable'元素。如果在'.editable'上發生了點擊,您不希望該事件冒泡並再次爲您的文檔處理程序觸發。 'stopPropagation()'防止冒泡。雖然'preventDefault()'可能是不必要的。我相信這隻會阻止瀏覽器針對該事件的默認操作,該操作對於您正在使用的元素不應該存在。這只是打字的習慣。 :) – awgy 2010-05-08 15:22:01