Ext内置的编辑器功能相对还是很弱,例如插入图片,文件管理,这些都没有,表格编辑也很弱。我是个懒人(相信大多数程序员都是懒人)幸好Extjs官方
论坛实在是太强大了,基本上是有求必应啊,社区氛围很好,貌似Ext官方有专门的团队来回复社区的问题。
总之我就找到了扩展HtmlEditor插入图片功能的帖子,里面的代码有很多问题,我做了一些修改,算是正常了,目前只是简单的插入url图片,稍后我
会扩展一个功能全面的plugin,包括管理上传的文件,文件管理等,不过这都是后话了,下面是代码和使用方法。
Ext.namespace('Ext.ux','Ext.ux.plugins');
Ext.ux.plugins.HtmlEditorImageInsert=function(config) {
config=config||{};
Ext.apply(this,config);
this.init=function(htmlEditor) {
this.editor=htmlEditor;
this.editor.on('render',onRender,this);
};
this.imageInsertConfig={
popTitle: config.popTitle||'Image URL',
popMsg: config.popMsg||'Please select the URL of the image you want to insert:',
popWidth: config.popWidth||350,
popValue: config.popValue||''
}
this.imageInsert=function() {
var range;
if(Ext.isIE)
range=this.editor.doc.selection.createRange();
var msg=Ext.MessageBox.show({
title: this.imageInsertConfig.popTitle,
msg: this.imageInsertConfig.popMsg,
width: this.imageInsertConfig.popWidth,
buttons: Ext.MessageBox.OKCANCEL,
prompt: true,
value: this.imageInsertConfig.popValue,
scope: this,
fn: function(btn,text) {
if(btn=='ok') {
if(Ext.isIE)
range.select();
this.editor.relayCmd('insertimage',text);
}
}
});
var win=msg.getDialog()
win.show.defer(200,win)
}
function onRender(){
if( ! Ext.isSafari){
this.editor.tb.add({
itemId : 'htmlEditorImage',
cls : 'x-btn-icon x-edit-insertimage',
enableToggle : false,
scope : this,
handler : function(){
this.imageInsert();
},
clickEvent : 'mousedown',
tooltip : config.buttonTip ||
{
title : '插入图片',
text : '插入图片到编辑器',
cls : 'x-html-editor-tip'
},
tabIndex :- 1
});
}
}
}
使用方法:
<script type="text/javascript">
Ext.onReady(function(){
Ext.QuickTips.init();
new Ext.FormPanel({
renderTo: 'form',
defaultType: 'textfield',
items: [{
xtype:'htmleditor',
fieldLabel:'some label',
width: 650,
height: 350,
plugins: new Ext.ux.plugins.HtmlEditorImageInsert({
popTitle: 'Image url?',
popMsg: 'Please insert an image URL...',
popWidth: 400,
popValue: 'http://www.google.gr/intl/en_com/images/logo_plain.png'
})
}
]
});
});
</script>
分享到:
相关推荐
扩展ExtJs的HtmlEditor编辑器插入图片.pdf 扩展ExtJs的HtmlEditor编辑器插入图片是指在ExtJs框架中,使用HtmlEditor编辑器来实现图片的插入功能。HtmlEditor是ExtJs提供的一个富文本编辑器组件,提供了基本的文本...
在Web开发中,富文本编辑器(HTML Editor)是一个常用工具,它允许用户在网页上进行类似Word的文本编辑操作,包括插入图片、链接等。本文将深入探讨如何使用ExtJS框架结合Servlet来扩展HTML Editor的插入图片功能。 ...
6. **添加网络图片**:提供一个输入框让用户输入网络图片的URL,通过`insertImage`方法将URL插入编辑器。 7. **验证和预览**:在插入网络图片前,可以使用`new Image()`对象加载URL,验证其有效性,如果加载成功,...
HtmlEditor(编辑器)的一个图片插件,制作过程用到了图片上传等,采用Struts1.2 ,上传组件使用的是Cos,这个插件的意义并不在于插件本身,只是希望给要用ExtJS做文件上传或想做ExtJS插件的朋友提供一种思路 ...
3. **扩展功能**:利用ExtJS的可扩展性,开发自定义插件以满足特殊需求,如Markdown转换、LaTeX公式编辑等。 4. **性能优化**:根据实际场景调整编辑器的更新频率,减少不必要的DOM操作,提高应用性能。 总之,...
在ExtJS4中,htmleditor是一个非常实用的组件,它允许用户在编辑器中进行HTML编辑,包括插入文本、格式化、链接创建等,而上传图片功能是增强编辑器功能的重要一环。本资源提供了一个完整的ExtJS4 htmleditor图片...
在ExtJS中,HtmlEditor是一个非常有用的组件,它提供了一个完整的HTML编辑器,允许用户在Web页面上进行文本编辑、格式化和插入多媒体内容,如图片。这篇博客文章"Extjs的HtmlEidtor富文本编辑器的使用和图片上传显示...
EXTJS中的TextArea_HTMLEditor是用于创建富文本编辑器的组件,它基于IFrame技术,提供了丰富的编辑功能,如字体样式调整、段落格式化、插入图片、链接等。这个组件允许用户以WYSIWYG(所见即所得)的方式编辑HTML...
EXTJS页面编辑器是一款专为EXTJS开发人员设计的强大工具,它极大地简化了EXTJS界面的构建过程,使得开发者能够快速、高效地创建出复杂的Web应用程序界面。EXTJS是一种流行的JavaScript框架,以其丰富的组件库、可...
extjs 4.2 的HtmlEditor在chrome中高亮文字
扩展Extjs4.2的htmleditor,添加 “上传图片”,”上传附件”等功能。
基于EXTJS 的在线EXCEL编辑器,是利用EXTJS的强大功能来实现对Excel文件的在线创建、编辑和查看的功能。这种编辑器允许用户在浏览器中直接处理Excel数据,无需依赖本地安装的Microsoft Excel或其他第三方软件。 ...
在EXTJS 3.4版本的应用中,集成第三方打印插件Lodop可以实现便捷的Web打印功能。Lodop是一款高效、易用的网页打印控件,它提供了丰富...总的来说,EXTJS结合Lodop的解决方案在Web打印领域具有较高的实用性和可扩展性。
在本文中,我们将深入探讨如何将ExtJS 4与百度编辑器进行整合,以及这个集成在实际项目中的应用。首先,我们来看一下标题所提到的关键技术:ExtJS 4和百度编辑器。 **ExtJS 4** 是一个强大的JavaScript框架,用于...
ExtJs HtmlEditor 扩展 可上传视频上传文件上传图片
9. htmleditor - xtype: 'htmleditor', 描述: HTML 编辑器 10. label - xtype: 'label', 描述: 标签 11. numberfield - xtype: 'numberfield', 描述: 数字编辑器 12. radio - xtype: 'radio', 描述: 单选按钮 13. ...
在给定的“EXTJS 强大的图片查看器 仿windows照片查看器”项目中,我们可以了解到,这个组件是EXTJS框架的一个扩展,旨在提供类似Windows操作系统中照片查看器的功能。下面将详细阐述EXTJS图片查看器的关键知识点。 ...
在IT行业中,JavaScript是一种广泛使用的客户端脚本语言,特别是在网页开发和富互联网应用程序...通过这样的扩展,我们可以使HtmlEditor更适合实际的业务需求,提高用户体验,同时保持与Word等传统文档编辑器的兼容性。
这个"EXTJS扩展例子集"显然是一个包含EXTJS3.0相关扩展组件的资源包,旨在帮助开发者理解和学习如何使用这些扩展。 在EXTJS中,扩展(Extensions)通常是指对框架原有功能的增强或定制,它们可以是新的组件、小部件...
通过扩展ExtJS的现有类,可以创建具有独特功能的新组件,并在设计器中使用。 10. **文档和支持**:ExtJS社区提供了详尽的文档和论坛支持,遇到问题时可以查阅官方文档或向社区求助,以解决在使用设计器过程中遇到的...