TinyMCE:检测onLeave()

时间:2009-12-16 05:03:24

标签: javascript jquery html tinymce

我试图检测用户何时离开tinyMCE编辑器窗口,但我无法这样做。这是我认为应该工作的代码(但不是):

$('.mceEditor').blur(function(){
    // I would expect this to fire when the user leaves the
    // tinyMCE editor, but it never seems to fire
});

我也试过了:

$('*')
    .not('.mceEditor, .mceEditor *')
    .click(function(){
        // I would expect this to fire when anything but the tinyMCE editor
        // has been clicked, but it seems to fire at every click
    });

这两种方法都没有工作,我已经在这几个小时了。任何帮助都会有很大的帮助。

谢谢, 西蒙

PS:我使用的是jquery插件版本,在这里找到: http://tinymce.moxiecode.com/examples/example_23.php

3 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

看起来像是使用iframe插入了tinymce。在这种情况下,您将不得不访问iframe的DOM,这可能会起作用。

$("#content_ifr").contents().find('#tinymce');

其中content_ifr是iframe的ID,而#tinymce似乎是包含内容的标记。使用萤火虫并四处寻找。

答案 2 :(得分:0)

TinyMCE在包装器SPAN元素中创建编辑器作为iframe。 你可以使用SPAN元素'onfocusout'事件。

例如:如果textarea元素id是'content',TinyMCE会创建一个元素id为'content_parent'的SPAN。

$("#content_parent")[0].onfocusout =function(){alert('mouse out');};