2011-07-25 7 views
3

最新のバージョンのjQueryプラグイン(1.2ベータ版)を試して、contenteditable DIVのキャレットを特定のオフセットで設定しています。Rangy&ContentEditable - キャレットを設定する

しかし、それはFirefoxで奇妙なエラーで応答します。 セキュリティエラー "コード:" ここに1000年

は、問題のあるコードです:

var el = $("#editablediv"), index = 11; 
var range = rangy.createRange(); 
range.setStart(el, index); 
var sel = rangy.getSelection(); 
sel.setSingleRange(range); 

setStart関数を呼び出すときに、コードが失敗しました。

誰でも適切な使用方法の例を教えてください。

+0

あなたが – Rafay

+0

を得るのですかどのようなエラーこれは、セキュリティエラー「コード:」であった1000年、私はよ並べ替えられました。それは、テキストノードを期待していました。 – Raybiez

答えて

14

私は私がテキストノードで正しいノードを通過するようになっていた、問題を発見した:

var el = $("#editablediv"), index = 11; 
var range = rangy.createRange(); 
range.setStart(el[0].childNodes[0], index); 
range.collapse(true); 
var sel = rangy.getSelection(); 
sel.setSingleRange(range); 
+1

はい。元のコードには2つの問題がありました。まず、 'setStart()'にはjQueryオブジェクトではなくDOMノードが必要であり、次に文字のオフセットを考えていました。 –

関連する問題