2013-04-29 145 views
0

我正在使用內容可編輯div來作爲實時協作目的的編輯器。我需要爲客戶端的每個用戶繪製插入/遊標。我通過添加和刪除每個事件(如按鍵和點擊)上的跨度來做到這一點。有沒有辦法讓一個不可編輯的跨度?

<span id="caret1" style="fontSize:18px color:red">|</span> 

如何使該跨度不可編輯?因此,當用戶將他的脫字號放在一個固定的位置,並且另一個用戶在同一位置編輯了某些內容時,他不能通過退格鍵刪除該脫字符,或選擇該脫字符並將其編輯爲文本。

編輯:

<span id="caret1" style="fontSize:18px color:red" contenteditable=false>|</span> 

不允許用戶在跨度至少寫,但用戶仍然可以通過退格鍵來刪除這個跨度。

+0

試過了,沒有用! – Bernice 2013-04-29 17:27:31

+2

嘗試使用1px左邊界或右邊界 – sachleen 2013-04-29 17:28:17

+0

而不是跨度?嗯..我可以嘗試,但如果有一種方法,這與跨越工作將更好,因爲我已經正確實施所有功能 – Bernice 2013-04-29 17:29:44

回答

0

幾件東西

1)您的源代碼格式不正確。太多的雙引號。

"fontSize:18px" color:red" 

2)另一件事是我還沒有看到CONTENTEDITABLE作爲一個真正的風格,我已經看到了行動的工作更像是一個僞類(在CSS文件中引用),或歸因於HTML標籤,而不是一種風格本身。

<span id="caret1" contentEditable="true" style=""> 

3)如果沒有這些工作,你可以嘗試使用Javascript/jQuery的方法刪除或退格到一個點那裏會是在彼此的頂部兩個光標的位置。你可以添加兩個ID到相同的跨度。

`<span id="caret1 caret2" style="fontSize:18px" contenteditable:"false" color:"red">|</span> ` 

當caret2做不同的東西,搬出caret1的,並創建一個新的caret2 ...

要做到這一點,你可以使用一個小腳本(也許使用像rangyInputs) ,並確定所選文本中是否有另一個插入符號......並且還使用該位.on('keypress')對刪除/退格進行驗證...

相關問題