全部。
我很难弄清楚这一点,这是我第二次需要用 tinyMCE 做某事,但这次我找不到答案。
这就是我想要做的:我在我的编辑器上添加了一个按钮,它打开一个带有单个文本输入字段和一个按钮的新弹出窗口。我想单击按钮并获取我在输入字段中设置的值,然后使用该值来修改我在编辑器中的内容。
这是我到目前为止所拥有的 - 只有相关的代码:
init : function( ed, url ) {
ed.addCommand( 'mceTooltip', function() {
ed.windowManager.open({
file: 'imageurl.html',
width: 480,
height: 180,
inline: 1,
title: 'Please enter an image URL'
}, {});
});
}
这就是 imageurl.html 所具有的:
<input type="text" id="image-url" />
<input type="button" id="submit-image-url" value="Ok" />
所以,我需要做的是在我单击“确定”按钮时获取任何“image-url”文本输入,并在我的编辑器中使用该文本。我知道我可以使用 ed.selection.setContent( fieldValue ),它会用 image-url 值替换我选择的文本,我只是不知道如何获取 image-url 值。
我能找到的最详细的信息是http://www.tinymce.com/wiki.php/How-to_implement_a_custom_file_browser但我不能让它满足我的需要。谁能帮我解决这个问题?我敢肯定,对于在这方面有更多经验的人来说,这应该很简单。
谢谢大家的关注。
更新了 imageurl.html **
<script>
document.getElementById( 'submit-image-url' ).onclick = function(){
var imageUrl = document.getElementById( 'image-url' ).value;
window.parent.tinyMCE.activeEditor.execCommand( 'mceInsertContent', 0, imageUrl );
window.parent.tinyMCEPopup.close(); // this line gets me this error: "Uncaught TypeError: Cannot read property 'windowManager' of undefined "
};
</script>