2013-06-27 44 views
1

遵守TinyMCE的變化。根據TinyMCE API,下面的JavaScript代碼觀察TinyMCE的編輯改動:從DART

tinyMCE.init({ 
    ... 
    setup : function(ed) { 
      ed.onChange.add(function(ed, l) { 
        console.debug('Editor contents was modified. Contents: ' + l.content); 
      }); 
    } 
}); 

但是,我不能運行使用JS庫從達特這個代碼。幫助表示讚賞。

更新: 上面的JS代碼存在問題。另外,我發現這個工作代碼here

var ed = new tinymce.Editor('textarea_id', { 
    init_setting_item: 1, 
}, tinymce.EditorManager); 

ed.on('change', function(e) { 
    var content = ed.getContent(); 
    console.log(content); 
}); 

ed.render(); 

我仍然需要幫助運行從DART代碼。最好將其結果存儲在Dart變量中以供後續處理。

回答

2

下面是從達特稱爲同一代碼:

var ed = new js.Proxy(js.context.tinymce.Editor, 'textarea_id', js.map({ 
    'init_setting_item': 1 
}), js.context.tinymce.EditorManager); 

js.retain(ed); // retain allows to use 'ed' in the following callback 
ed.on('change', new js.Callback.many((e) { 
    var content = ed.getContent(); 
    window.console.log(content); 
})); 

ed.render(); 
+0

我現在沒有錯誤。但沒有任何東西會輸出到控制檯。謝謝。 –

+0

等效的JS代碼是否工作? –

+0

我剛查過。等效的js代碼不起作用。不幸的是,我不知道js,所以我無法找到問題的根源。 –