1

Good morning people, hope y'all are having a good time, first and foremost i want to thank y'all for your speedy response to my questions, a while ago i need a word counter for tinymce and i got some good response, this time i want when a user cut and paste into the counter it should also count the words and restrict them accordingly, here is the code to the onkey press counter

tinyMCE.init({
mode : "textareas",
elements : "teaser,headline",
setup: function(ed) {
var text = '';
var span = document.getElementById('word-count');
if(span) 
{
    var wordlimit = span.innerHTML;
    ed.onKeyDown.add(function(ed, e) {
    text = ed.getContent().replace(/(< ([^>]+)<)/g, '').replace(/\s+/g, ' ');
    text = text.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
    wordcount = wordlimit - (text.split(' ').length);
    span.innerHTML = wordcount;
    if(wordcount <= 0 && e.keyCode != 8) 
    {
        return tinymce.dom.Event.cancel(e);
    }
    });

}

}

})

please can you help modify it for me to also watch for on paste. Thank you. @cyberomin.

Cyberomin
  • 453
  • 2
  • 8
  • 22

1 Answers1

1

That is pretty forward:

ed.onPaste.add(function(ed, e) {
  text = ed.getContent().replace(/(< ([^>]+)<)/g, '').replace(/\s+/g, ' ');
  text = text.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
  wordcount = wordlimit - (text.split(' ').length);
  span.innerHTML = wordcount;
  if(wordcount <= 0 && e.keyCode != 8) 
  {
      return tinymce.dom.Event.cancel(e);
  }
});
Thariama
  • 50,002
  • 13
  • 138
  • 166