Может кто подсказать?
К сути - есть tinyMCE и jquery плагин версии 2.1
Нужно реализовать перехват изменения содержания айфрейма с визивигом
Проискал интернет, единственное что обнаружил
tinyMCE.init({
onchange_callback: "myfunction"
})
Но с плагином jQuery не заводится.
ни таким образом, ни при подключении к конструкции приведённой ниже.
вот пример: (На хост не выкладываю - смысла нет, на jsFiddle аналогично, может так в курсе кто)
[spoiler]
$('#text_area_cell_create').tinymce({
// Location of TinyMCE script
content_css : "/core/templates/js/tiny_mce/custom_content.css",
script_url : '/core/templates/js/tiny_mce/tiny_mce.js',
// General options
theme : "advanced",
language : "ru",
relative_urls : false,
plugins : "safari,pagebreak,style, layer,table,save,advhr,advimage, advlink,emotions,iespell,inlinepopups,insertdatetime, preview,media,searchreplace,print,contextmenu, paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,images",
file_browser_callback : "upload",
// Theme options
theme_advanced_buttons1 : "save,|,mylistbox,mysplitbutton,bold,italic,underline,separator,strikethrough,justifyleft,justifycenter, justifyright,justifyfull,bullist,numlist,formatselect,|,code,|, undo,redo,link,unlink,image,images,|,fullscreen",
theme_advanced_buttons2 : "abbr,acronym,del,ins,attribs,styleprops",
theme_advanced_buttons3 : "",
fullscreen_settings : {
theme_advanced_buttons1 : "save,|,undo,redo,|,cut,copy,paste,pastetext,pasteword,|,search,replace,|, cleanup,removeformat,visualaid,visualchars,nonbreaking,|,bold, italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|, outdent,indent,blockquote,|,sub,sup,|,bullist,numlist,formatselect,code,|,fullscreen",
theme_advanced_buttons2 : "tablecontrols,|,insertlayer,moveforward,movebackward,absolute,|,link, unlink,anchor,|,insertdate,inserttime,|,charmap,emotions,iespell, media,image,images,advhr,hr,|,cite,abbr,acronym,del,ins, attribs,styleprops,|,typograf",
theme_advanced_path_location : "bottom"
},
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
theme_advanced_statusbar_location : "bottom",
theme_advanced_resizing : false,
setup : function(ed){
if (ed.editorId != 'mce_fullscreen') {
tinyMCE.myActiveEditor = {};
tinyMCE.myActiveEditor = ed;
}
ed.onActivate.add( function(ed){
if( ed.editorId != 'mce_fullscreen' ){
tinyMCE.myActiveEditor = {};
tinyMCE.myActiveEditor = ed;
}
});
ed.onInit.add(function(ed) {
el = ed.getBody();
//элементы данной функции привёл ниже
tinyMCE_HTML_into_elem(el)
});
ed.onLoadContent.add( function(ed){
ed.addCommand('mceSave', function(){
$(".elem_new").html($("#text_area_cell_create").val())
return false;
});
});
}
});
[/spoiler]
В данный момент вышел из положения велосипедом
el.addEventListener('DOMCharacterDataModified',
function() {
afterListinerResize($(".elem_new"))
});
и
el.addEventListener('DOMSubtreeModified',
function() {
afterListinerResize($(".elem_new"))
});
и
el.addEventListener('paste',
function() {
afterListinerResize($(".elem_new"))
});
С отловом повторений, но всё же возможно есть простой способ перехвата?
Буду очень признателен
upd: кросбраузерность не важна. Только хром, Новая опера и ФФ.
upd2: или возможно както отследить изменение содержания кода в текстарее?
upd3: Самый крайний вариант - буду обфускацию tinymce ломать