Jus*_*tin 26 jquery tinymce focus
我在页面上使用TinyMCE作为textarea,但它在其他元素的Tab键顺序中不能很好用.
当我跳出第一个元素时,我可以使用以下代码捕获:
$('#title').live('keypress', function (e) {
if(e.keyCode == 9) {
alert('tabbed out');
}
});
Run Code Online (Sandbox Code Playgroud)
如何将焦点设置为TinyMCE编辑器?
jbn*_*unn 41
终于找到了答案...使用命令:
tinymce.execCommand('mceFocus',false,'id_of_textarea');
Run Code Online (Sandbox Code Playgroud)
就我的目的而言,'id_of_texterea'是"描述",即
<textarea id="description" ... ></textarea>
Run Code Online (Sandbox Code Playgroud)
在我的textarea之前的表单元素中,我将上面的execCommand添加到元素的"onblur"操作中.
小智 26
我知道这是一篇旧帖子,但只是添加了关于让编辑器打开并且无法正常工作的输入.我发现对我有用的是:
tinyMCE.activeEditor.focus();
Run Code Online (Sandbox Code Playgroud)
我必须在window.setTimeout事件中设置它,因为我使用JS对象等.希望这可以帮助.
小智 13
聚焦也是这样的:
tinyMCE.get('id_of_textarea').focus()
Run Code Online (Sandbox Code Playgroud)
看看tabfocus插件,它正是你想要的:
http://tinymce.moxiecode.com/tryit/tab_focus.php
小智 9
如果你正在使用jQuery的tinymce.以下将有效
$("#id_of_textarea").tinymce().focus();
Run Code Online (Sandbox Code Playgroud)
您只能在编辑器初始化之后执行此操作,因此您可能需要等待其中一个初始化事件.
小智 7
实际工作原理是在configfile(或jquery文件)中设置选项此选项使您可以自动聚焦编辑器实例.此选项的值应为编辑器实例ID.编辑器实例id是id原始textarea或被<div>替换的元素.
auto_focus选项的使用示例:
tinyMCE.init({
//...
auto_focus : "elm1"
});
Run Code Online (Sandbox Code Playgroud)
对于TinyMCE 4来说,这些解决方案中的一些不再有效.
//似乎不适用于TinyMCE 4
tinymce.execCommand('mceFocus',false,'id_of_textarea');
Run Code Online (Sandbox Code Playgroud)
//没用
$("id_of_textarea").tinymce().focus();
tinyMCE.activeEditor.focus();
Run Code Online (Sandbox Code Playgroud)
什么对我有用
//在Chrome中运行良好,但在Firefox中根本不适用
tinyMCE.init({
//...
auto_focus : "id_of_textarea"
});
Run Code Online (Sandbox Code Playgroud)
//添加这个,这样Firefox也可以
init_instance_callback : "customInitInstanceForTinyMce", // property to add into tinyMCE.init()
function customInitInstanceForTinyMce() {
setTimeout(function () { // you may not need the timeout
tinyMCE.get('Description').focus();
}, 500);
}
Run Code Online (Sandbox Code Playgroud)
小智 6
tinyMCE.get('Description').getBody().focus();
以上工作也适用于Firefox,Chrome和IE.我没有在其他浏览器中测试过.