更改keyup以单击事件而不触发操作

时间:2015-02-28 09:14:56

标签: javascript jquery wordpress

我正在尝试在函数上添加click事件,但由于某种原因没有发生任何事情,控制台和操作中的错误都没有被触发。 这是我正在改变的插件:https://github.com/r-a-y/bbp-live-preview/blob/master/bbp-live-preview.php和第102-106行

window.onload = function() {
    tinymce.get('bbp_<?php echo $type; ?>_content').on('keyup', function(e) {
        bbp_preview_post(this.getContent(), '<?php echo $type; ?>', true);
    });
}

这是在keyup

上触发事件的功能

我试过

HTML

<button type="button" id="bbp_topic_preview" class="button submit">Preview Topic</button>

Jquery - V1

window.onload = function() {
    tinymce.get('bbp_<?php echo $type; ?>_content').on('click', '#bbp_topic_preview', function(e) {
        bbp_preview_post(this.getContent(), '<?php echo $type; ?>', true);
    });
}

Jquery - V2

window.onload = function () {
    jQuery('#bbp_topic_preview').on('click', function() {
        tinymce.get('bbp_<?php echo $type; ?>_content').on('ready', function(e){
            bbp_preview_post( this.getContent(), '<?php echo $type; ?>', true );
        });
    });
}

但是没有任何事情发生,控制台也没有出现任何错误。

1 个答案:

答案 0 :(得分:0)

管理解决问题。需要分离函数并将函数tinymce.get..分配给变量,我将其作为参数传递给包含对象this的函数。

window.onload = function () {
    jQuery('#bbp_topic_preview').on('click', function() {
        var get_contents = tinymce.get('bbp_<?php echo $type; ?>_content');
        bbp_preview_post( get_contents.getContent(), '<?php echo $type; ?>', true );
    });

}