我有一些頁面是這樣的:如何防止| Mozilla Firefox瀏覽器(3.6)CONTENTEDITABLE - 應用CSS可編輯容器,而不是它的內容
<div id="editor" contenteditable="true">SomeText</div>
我有一個自制的JS編輯器,它實際上發出
document.execCommand(some_command,false,optional_value);
當用戶在編輯器中按下按鈕時。 (例如,我有簡單明瞭的[Bold]按鈕)。
只要我將編輯應用到「SomeText」的一部分,一切都很好。例如選擇「文本」與鼠標和按[粗體]按鈕(其導致document.execCommand(「黑體」,FALSE,FALSE))會產生:
<div id="editor" contenteditable="true">Some<span style="some-css-here">Text</span></div>
但是當我選擇的全部內容格在我的編輯器(在這個例子中「SomeText」則會),然後按[粗體],FF不會產生預期的
<div id="editor" contenteditable="true"><span style="some-css-here">SomeText</span></div>
而是
<div id="editor" contenteditable="true" style="some-css-here">SomeText</div>
公告的「style」屬性走進了編輯格!
爲什麼這對我有影響? - 這是因爲編輯完成後,我想將可編輯div的內容以及所有樣式,格式化等進一步用於頁面。但我不能 - 現在所有的造型都在div裏面。 一個解決方案,當我會被建議從div中提取樣式是不可接受的 - div在其生命中需要從頁面的其他活動元素(重jQuery使用)很多樣式
因此簡而言之: 如何讓FF永遠不觸及可編輯div並將所有樣式應用於其內部內容?
真誠感謝您的光臨。 (剛拔掉最後我的頭髮,瀏覽FF開發站點與許多其他一起(((()