词条 | xheditor |
释义 | 简介xhEditor是一个基于jQuery开发的简单迷你并且高效的可视化XHTML编辑器,基于网络访问并且兼容IE 6.0+,Firefox 3.0+,Opera 9.6+,Chrome 1.0+,Safari 3.22+。 xhEditor完全基于Javascript开发,您可以应用在任何的服务端语言环境下,例如:PHP、ASP、ASP. N E T、JAVA等。 xhEditor可以在您的CMS、博客、论坛、商城等互联网平台上完美的嵌入运行,能够非常灵活简单的和您的系统实现完美的无缝衔接。 主要特点精简迷你初始加载4个文件,包括:1个js(50k)+2个css(10k)+1个图片(5k),总共65k。若js和css文件进行gzip压缩传输,可以进一步缩减为24k左右。 高效代码基于强大的开源jQuery引擎开发,提供高效的代码执行效率,并完美的实现最佳浏览器兼容性。 使用简单简单的调用方式,加一个class属性就能将您的textarea立马变成一个功能丰富的可视化编辑器。 内置Ajax上传内置强大的Ajax上传,包括HTML4和HTML5上传支持(多文件上传、真实上传进度及文件拖放上传),追求完美的用户上传体验。 Word自动清理实现Word代码自动检测并清理,提供高效完美的Word代码过滤方案,生成代码最优化精简,但是却不丢失任何细节效果。 UBB可视化编辑提供完美的UBB可视化编辑解决方案,在您获得安全高效代码存储的同时,又能享受可视化编辑的便捷。 兼容以下浏览器:1. I E6, IE7, IE8, IE9 2.Firefox 3.0 + 3.Chrome 1.0 + 4.Opera 9.6 + 5.Safari 3.22 + 常见问题1.xhEditor能兼容哪些jQuery版本? xhEditor最初的版本是基于jQuery 1.3.2开发的,因此目前v1.0系列的所有版本都能最大的兼容1.3.2。为了获得更好的代码性能,目前xhEditor官方更建议使用最新的jQuery版本。 虽然说v1.0版本系列能最大的兼容jQuery 1.3.2,但是在实际测试过程中,也发现一个不可修正的问题:在IE6下无法使用缩略图上传模式。如果你不需要使用缩略图模式,可以在jQuery 1.3.2基础上完美的运行xhEditor v1.0版本系列。 2.我的网页是GB2312编码的,怎样才能使xhEditor编辑器没有乱码? 如果使用最新版xhEditor的mini压缩版本,因为里面的文字完全utf-8编码化,可以直接调用,不会出现乱码现象。 如果使用的是源代码js文件或早期的xhEditor版本,在非utf-8编码的网页中使用就会出现乱码现象,只需将script的charset属性设置成utf-8即可完美解决: <scripttype="text/javascript"charset="utf-8"src="xheditor-zh-cn.js"></script> 3.正常加载了xhEditor,读取textarea的value值,为什么读取不到最新编辑结果? 目前网络中所有的在线编辑器都是利用新创建的iframe来实现可视化编辑功能,xhEditor也不例外,所以在提交前必需要将最新的编辑结果重新同步到原来的textarea。 xhEditor默认会在textarea所在的form对象中绑定onsubmit事件,当用户点击submit按钮时,xhEditor就会将最新结果同步回textarea,随后随表单中的其它表单项一同提交到服务端脚本。因此,如果不需要用Javascript额外处理,普通的表单式提交是没任何问题的。 如果网页中需要用Javascript额外处理编辑结果,比如ajax提交表单,则有三种解决方案: 使用jQuery的事件绑定或者标准DOM绑定方法在form上绑定submit事件(绑定代码必需在xhEditor初始化代码后面),即是在xhEditor把值回传后再读取,在相应绑定的函数中读取textarea的value值即是最新编辑结果; 使用jQuery的标准取值方法:$('#textarea_id').val(); 使用xhEditor提供的专用读值API接口:editor.getSource(); 4.怎么添加自定义的表情? 可以在初始化参数中使用emots参数来自定义表情,对于emots参数的详细介绍请参考初始化参数列表。下面我们举一个简单例子: 在xheditor_emot文件夹中新建文件夹:msn 在msn文件夹中放置40个表情图片文件,文件名分别为:1.gif 到 40.gif 在初始化参数中添加: emots:{msn:{name:'MSN',count:40,width:22,height:22,line:8}} 此参数定义了一个名字为msn的表情组,显示名称为:“MSN”,总共40个表情,表情区域的宽度和高度都是22像素,每行8个。 5.怎么覆盖编辑器自带的默认表情? 只需把自定义表情的名称设置为default,即可覆盖掉编辑器中自带的表情组。下面为操作示例: 删除xheditor_emot文件夹中的default文件夹 将自定义的表情文件夹名改为default 在初始化参数中添加: emots:{'default':{name:'MSN',count:40,width:22,height:22,line:8}} 6.当前页面设置了document.domain,如何让xhEditor工作正常? 主要考虑到若要让1.0支持跨域调用,编辑器内核架构变动会非常大,因此目前v1.0版本系列暂时还不支持跨域调用。 我们开发团队已经着手规划开发v2.0版本系列,到时会努力提供完美的跨域解决方案,敬请期待。 7.textarea处在隐藏的区域中,如何初始化编辑器? 如果你直接对隐藏区域中的textarea初始化xhEditor,会初始化失败,并提示:“当前textarea处于隐藏状态,请将之显示后再初始化xhEditor,或者直接设置textarea的width和height样式”。 这个问题出现的根源在于浏览器的渲染模式造成的,目前的所有浏览器对于隐藏状态的内容是不进行渲染,也就是隐藏区域内的所有元素都不具有宽度和高度值。xhEditor编辑器默认是读textarea的高度和宽度值,而隐藏状态下就会读取失败。 针对这个问题,我们提出以下两个解决方案: 先将隐藏状态的区域显示后,再用JS代码初始化编辑器,这也是xhEditor官方建议的方案; 在textarea上设置CSS高度和宽度,举例如下: style="width:300px;height:200px;" 8.使用普通表单提交,怎么每次服务端取到的值总是之前旧的编辑结果? 如果你使用普通的表单式提交,而非AJAX提交,还是会出现服务端无法读取到最新编辑结果的问题。那么请检查一下你的代码是不是属于以下情况: 如果是以下结构的HTML代码,由于是非标准HTML代码结构,在某些浏览器(例如Firefox)下会导致xhEditor工作不正常: <table><form><tr>唯一解决方案:把代码结构改为标准结构: <form><table><tr> 版本日志xhEditor v1.1.12 (简体,繁体,English) (zip) [720KB](更新:2011年12月4日) xhEditor v1.1.11 (简体,繁体,English) (zip) [720KB](更新:2011年11月1日) xhEditor v1.1.10 (简体,繁体,English) (zip)[718KB] ( 更新:2011年9月4日 ) MD5: 79DA71B9F5CD533591449451F4BF69AC xhEditor v1.1.10 (简体,繁体,English) (7z)[436KB] ( 更新:2011年9月4日 ) MD5: 0E5A88D0E1A666441ACB11AAD929C361 xhEditor v1.1.10 (简体,繁体,English) [507KB] ( 更新:2011年9月4日 ) MD5: 27E15A404FC76107BBB5669A919A17CB xhEditor v1.1.8 (简体,繁体,English) (zip) [702KB] ( 更新:2011年7月7日 ) xhEditor v1.1.7 (简体,繁体,English) (zip) [687KB] ( 更新:2011年6月1日 ) |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。