2013-05-05 22 views
4

我有最新版本的tinymce編輯器。我有問題,當我想添加節ed.onKeyDown。在Firebug控制檯我有錯誤消息:ed.onKeyDown in tinymce示例

TypeError: ed.onKeyDown is undefined

之前是我的全部HTML文件:

<textarea id="txtContent"></textarea> 
    <p>Words left: <span id="txtContent-word-counter">200</span></p> 

    <script src="http://code.jquery.com/jquery-latest.js" type="text/javascript"></script> 
    <script type="text/javascript" src="tinymce\tinymce.jquery.js"></script> 
    <script type="text/javascript"> 
    tinymce.init({ 
     selector: "textarea", 

    setup: function(ed) { 
     var text = ''; 
     var span = document.getElementById(ed.id + '-word-counter'); 
     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); 
       } 
      }); 
     } 
    } 

    }); 
    </script> 

來源: https://snipt.net/tamewhale/add-word-count-and-limit-to-tinymce/

+0

你確定你不需要包裝在$(文件)。就緒? – Cherniv 2013-05-06 09:16:58

+0

我不確定...沒有ed.onKeyDown.add它正在工作... – cadi2108 2013-05-06 10:41:53

+0

只是爲了實驗,把'tinymce.init'放在'$(document).ready'中 – Cherniv 2013-05-06 10:55:28

回答

0

我可能是錯了,但你難道不想要綁定已經觸發的事件「ed.onKeyDown」。我會假設或認爲你需要綁定一個對象到該事件。另外,您應該將init放入文檔就緒函數中,就像前面提到的Cherniv一樣。