2012-06-15 34 views
1

我發現當按下「enter」鍵時,爲了顯示換行符「\ n」,所有瀏覽器都會阻止默認事件。原始代碼在這裏:http://jsfiddle.net/FhEf6/3/Jquery和Contenteditable - 強制換行顯示爲一個空格

它的工作原理很完美,但是當我將它包含在我自己的網站上(使用Jquery 1.7.2)時,它確實顯示了新的「\ n」就像一個空格。我很好奇,因爲它在源代碼中正確顯示了換行符。

另一件事是,如果我試圖通過<br>,而不是用換行符替換...的<br>顯示這個樣子,完全(望源<上,>是由各自ヶ輛替換...)。

這是一件很奇怪的事情,因爲原始代碼在jsfiddle中完美運行,並且我沒有做出任何改變。我在這裏讀到一個問題(View Post),但我不認爲這是一個很好的解決方案。

編輯

UPS ...我需要使用 「白色空間:前」 在容器上。好吧,但是......我仍然沒有理解它,爲什麼它會這樣工作?,一條新線是否是一條新線?

回答

0

它仍然是HTML,因此使用新行字符將不起作用。堅持用<br>標籤。

這不適用於您當前的代碼,因爲它是元素節點與文本節點

我建議使用Rangy作爲所有可以滿足的項目。

我有一個幾乎工作液的位置: http://jsfiddle.net/7A8Xw/(在Chrome它插入休息,但它BR後不是移動光標,如果你打的內容(工作的結局進入,如果你打兩次))

+0

很好的答案! ; d – Kenedy

相關問題