1
如何將文本輸入字段集中在CkEditor的內容區域中?撥打$(inputselector).focus()
似乎不起作用。光標停留在原來的位置。CkEditor中的輸入焦點
如何將文本輸入字段集中在CkEditor的內容區域中?撥打$(inputselector).focus()
似乎不起作用。光標停留在原來的位置。CkEditor中的輸入焦點
Ctrl+Shift+I
用於調試複製粘貼下方所有行,按回車鍵
var tgbody = $('iframe')[0].contentDocument.getElementsByTagName('body')[0];
var target = $(tgbody).find('> *')[0];
var wildin = $("<input type='text' name='cfld' id='cfld' value='some text' />");
$(tgbody).removeAttr('contenteditable');
$($('iframe')[0].contentDocument.getElementsByTagName('body')[0]).removeAttr('contenteditable');
wildin.appendTo(target);
/// O.o 0.º
wildin.focus();
再次點擊Ctrl+Shift+I
;您會注意到內容區域內有一個新的輸入,並且您的光標位於其中。
它看起來像這種方法在鉻,但不是Firefox的作品。我一直在Firefox中測試,所以這就是爲什麼它沒有工作。 – 2012-04-16 17:18:10
我不確定,但我認爲CKEditor有一個包含這些輸入的iframe。看看'$(inputselector)'是否返回任何元素的集合,如果是這樣,你可能需要解決事件取消或什麼的。 – 2012-04-16 05:24:25
它會拾取在輸入上觸發的事件,但即使明確觸發事件,我也無法獲取元素焦點。我在考慮focus()在這種情況下實際上並沒有移動光標。 – 2012-04-16 05:49:46
這就是瀏覽器行爲。拿出'contenteditable'屬性,它應該工作。 '$(inputselector).closest('body')。removeAttr('contenteditable');'或者'contenteditable =「true」'所在的位置。 – 2012-04-16 06:17:47