0

私はを使用してCKEDITOR 4います。スクロール/マウス/カーソルのXY位置ウィンドウではない)を見つける方法は?

以下のコードをテストしましたが、ウィンドウのスクロール位置がわかります。

var win = new CKEDITOR.dom.window( window );
var pos = win.getScrollPosition();
alert( "pos.x :: " + pos.x + " pos.y :: " + pos.y );

代わりに、CKEDITORテキスト領域のXY位置が必要です。

4

1 に答える 1

0

これを試して

var selectedRange = selected.getRanges()[0];
var node = selectedRange.startContainer;
var value = node.getText();
var position = selectedRange.endOffset;

またはこのリファレンスをチェックしてください

リンクが壊れた場合に備えて、ここにコードを示します。

 function doGetCaretPosition (ctrl) {
    var CaretPos = 0;   // IE Support
     if (document.selection) {
         ctrl.focus ();
         var Sel = document.selection.createRange ();
         Sel.moveStart ('character', -ctrl.value.length);
         CaretPos = Sel.text.length;
      }
   // Firefox support
   else if (ctrl.selectionStart || ctrl.selectionStart == '0')
        CaretPos = ctrl.selectionStart;
          return (CaretPos);
       }
  function setCaretPosition(ctrl, pos){
      if(ctrl.setSelectionRange)
    {
      ctrl.focus();
      ctrl.setSelectionRange(pos,pos);
    }
    else if (ctrl.createTextRange) {
    var range = ctrl.createTextRange();
    range.collapse(true);
    range.moveEnd('character', pos);
    range.moveStart('character', pos);
    range.select();
    }
 }
于 2013-01-28T12:04:09.037 に答える