2

chrome と tinymce に問題があります。エディターにフォーカスを設定するには、次のようにします。

tinyMCE.getInstanceById('my_editor_id').focus();

FF と IE では正常に動作します。なぜクロムではないのですか?

これはまったく機能しません:

tinymce.execCommand('mceFocus', false, 'my_editor_id');

他の提案はありますか?

4

2 に答える 2

0

次のようなものを試してください:

setup: function(ed){
   ed.onInit.add(function(ed){
      $(ed.getDoc()).contents().find('body').focus(function(){tinymce_focus();});
   });
}
于 2013-05-27T10:13:19.023 に答える
0

次の解決策は私にとってはうまくいきました。フォーカスを発生させるフォーカス イベント リスナーを作成します。これが無限ループを引き起こしているのかどうかはわかりませんが、問題なく動作しています。

// Chrome Hack
var addEvent = function(node,eventName,func){

      if ("undefined" == typeof node || null == node) {              
      } else {
          if (!node.ownerDocument.addEventListener && node.ownerDocument.attachEvent) {
              node.attachEvent('on' + eventName, func);
          } else node.addEventListener(eventName,func,false);
      }
}; 

var cur = ed.dom.select('textarea'); // select all tinymce textareas
for(var idx=0;idx<cur.length;idx++) {           
    addEvent(cur[idx],'focus',function(evt) {
            evt = evt ? evt : window.event;                             
            evt.target.focus();
            return true;                                
        });
}
于 2013-08-03T11:58:20.713 に答える