我在页面上有两个tinymce
个实例,当它们被更改时,我想更新一个最终保存到localStorage
的javascript对象。
当页面加载时,我在填充tinymce
的两个localstorage
实例时没有问题,但是当它们被更改时,我似乎无法传递适当的jQuery
event
包含event.target
个update
信息给iframe
处理程序。我怀疑这是由于update
,但我很难过。
在我的e.target
回调中,我需要知道e.target.id
和tinymce.init({
setup:function(ed){
ed.on("init",function(e){
switch(e.target.id){
case "intro":
_content = obj.INFO.INTRO.TEXT;
break;
case "conclude":
_content = obj.INFO.CONCLUDE.TEXT;
break;
}
tinyMCE.activeEditor.setContent(_content);
});
ed.on("change",function(e){
//update(jQuery.Event("edit",{target:$(e.currentTarget).find("body")}));
//jQuery.Event("edit",{target:e.currentTarget})
update(e);
});
ed.on("keyup",function(e){
//update(jQuery.Event("edit",{target:$(e.currentTarget).find("body")}));
update(e);
});
ed.on("click",function(e){
//update(jQuery.Event("edit",{target:$(e.currentTarget).find("body")}));
//jQuery.Event("edit",{target:tinyMCE.activeEditor, editor:tinyMCE.activeEditor.id})
update(e);
});
}
});
,但它会传递一个不包含该信息的对象,如下所示:
{isTrusted: true, screenX: 953, screenY: 790, clientX: 298, clientY: 20…}
function versionCompare(myVersion, minimumVersion) {
var v1 = myVersion.split("."), v2 = minimumVersion.split("."), minLength;
minLength= Math.min(v1.length, v2.length);
for(i=0; i<minLength; i++) {
if(Number(v1[i]) > Number(v2[i])) {
return true;
}
if(Number(v1[i]) < Number(v2[i])) {
return false;
}
}
return (v1.length >= v2.length);
}
答案 0 :(得分:2)
这里的问题是你获得编辑ID。您可以使用以下内容获取它:
NodeUtils.getTargetAssociatedNodeRef
对于一个现场的例子,我创建了一个小小的小提琴:http://fiddle.tinymce.com/6mfaab/1