最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - trigger keyup event on a tinymce window - Stack Overflow

programmeradmin0浏览0评论

I have a webpage/form with multiple tinymce instances and setup to respond with count of words/characters. everything works fine but could not get the display of word/character count on page load with initial content. here is my setup portion in tinymce setup.

setup: function(ed) {
    var text = ''; 
    var wordcount = false;
    ed.onKeyUp.add(function(ed, e) {
        var contents = new Object();

        for(i=0; i < tinyMCE.editors.length; i++){
           if (tinyMCE.editors[i].getContent())
               contents[i] = tinyMCE.editors[i].getContent();
           text = contents[i].replace(/(<([^>]+)>)/g,'').replace(/\s+/g,' ');
           text = $.trim(text);
           $('#' + tinyMCE.editors[i].id + '_path_row').text(text.split(' ').length + ' words, ' + text.length + ' characters.');
        }
    }
}

Now the part i am struggling is how to trigger key up when the page is displayed with initial content so that it displays word/character count.

I tried $('#' + tinyMCE.editor(0).id + '_ifr').keyup(); and $('#textarea1').keyup(); but no use.

Can some one help me to get it right?

I have a webpage/form with multiple tinymce instances and setup to respond with count of words/characters. everything works fine but could not get the display of word/character count on page load with initial content. here is my setup portion in tinymce setup.

setup: function(ed) {
    var text = ''; 
    var wordcount = false;
    ed.onKeyUp.add(function(ed, e) {
        var contents = new Object();

        for(i=0; i < tinyMCE.editors.length; i++){
           if (tinyMCE.editors[i].getContent())
               contents[i] = tinyMCE.editors[i].getContent();
           text = contents[i].replace(/(<([^>]+)>)/g,'').replace(/\s+/g,' ');
           text = $.trim(text);
           $('#' + tinyMCE.editors[i].id + '_path_row').text(text.split(' ').length + ' words, ' + text.length + ' characters.');
        }
    }
}

Now the part i am struggling is how to trigger key up when the page is displayed with initial content so that it displays word/character count.

I tried $('#' + tinyMCE.editor(0).id + '_ifr').keyup(); and $('#textarea1').keyup(); but no use.

Can some one help me to get it right?

Share Improve this question edited Sep 27, 2012 at 9:00 Thariama 50.9k13 gold badges145 silver badges175 bronze badges asked May 9, 2011 at 11:14 Srikanth SSrikanth S 1,8776 gold badges18 silver badges24 bronze badges 0
Add a ment  | 

3 Answers 3

Reset to default 3

Add this to your setup:

ed.onInit.add(function(ed) {ed.onKeyUp.dispatch();});

Doc: http://tinymce.moxiecode./wiki.php/API3:class.tinymce.util.Dispatcher

After:

tinymce.init

you place the code:

  init_instance_callback: function(editor) {
    editor.on('keyUp', function(e) {
      observa_boton_ir_paso1();
    });
  }

There was a character missing. Try this (works at elast in my browser FF 3.6.17)

setup: function(ed) {
    var text = '';
    var wordcount = false;
    ed.onKeyUp.add(function(ed, e) {
        var contents = new Object();

        for(i=0; i < tinyMCE.editors.length; i++){
           if (tinyMCE.editors[i].getContent())
               contents[i] = tinyMCE.editors[i].getContent();
           text = contents[i].replace(/(<([^>]+)>)/g,'').replace(/\s+/g,' ');
           text = $.trim(text);
           $('#' + tinyMCE.editors[i].id + '_path_row').text(text.split(' ').length + ' words, ' + text.length + ' characters.');
        }
    });
}
发布评论

评论列表(0)

  1. 暂无评论