亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網(wǎng)站 > 軟件應(yīng)用 > 正文

xhEditor編輯器入門基礎(chǔ)

2024-09-06 19:16:48
字體:
供稿:網(wǎng)友

1.1. 在線可視化HTML編輯器概述

在Web程序應(yīng)用中,最常見的一種行為是信息和言論的發(fā)布和交流。而在信息發(fā)布的同時,往往會有對信息發(fā)布的格式、類型和功能上的需求,比如:加粗、下劃線等等,以使文字信息能夠更形象更美觀的傳達給閱讀者,同時也提高信息發(fā)布的工作效率。在這個需求的背景下,HTML在線編輯器就應(yīng)運而生了。

顧名思義,在線HTML編輯器就是在線編輯HTML代碼的工具,它經(jīng)常被應(yīng)用于留言板留言、論壇發(fā)貼、Blog編寫日志或等需要用戶輸入HTML的地方,是Web應(yīng)用的常用模塊之一。在線HTML編輯器可以實現(xiàn)對編輯內(nèi)容添加各種豐富多彩的文字效果,以及提供各種方便快捷的操作功能,最大的提高編輯工作效率。在線HTML編輯器是任何網(wǎng)站不可或缺的重要功能組件,是互聯(lián)網(wǎng)用戶得心應(yīng)手的馳騁網(wǎng)絡(luò)的有力工具。


1.2. 獲取xhEditor

您可以訪問xhEditor官方網(wǎng)站下載最新版本的xhEditor編輯器,xhEditor官方網(wǎng)站地址為:http://xheditor.com/,打開右上角的免費下載 | 代碼向?qū)ф溄?,即可找到最新版本的下載地址。

xhEditor無需任何安裝,無需任何設(shè)置,直接解壓縮并拷貝到你的網(wǎng)站相應(yīng)文件夾下面即可直接調(diào)用。


1.3. xhEditor運行環(huán)境

xhEditor是基于瀏覽器的HTML、CSS和Javascript環(huán)境開發(fā)的,因此原則上市場上絕大部分瀏覽器我們都能完美的運行,目前已測試的瀏覽器兼容列表如下:IE 6.0+,Firefox 3.0+,Opera 9.6+,Chrome 1.0+,Safari 3.22+ (+號代表往后所有新版本)。xhEditor是完全基于瀏覽器環(huán)境的,因此不存在操作系統(tǒng)選擇性,是完全跨平臺的。xhEditor同時也可以應(yīng)用在任何的服務(wù)端語言環(huán)境下,例如:PHP、ASP、ASP.NET、JAVA等,可以在您的CMS、博客、論壇、商城等互聯(lián)網(wǎng)平臺上完美的嵌入運行,能夠非常靈活簡單的和您的系統(tǒng)實現(xiàn)完美的無縫銜接。


1.4. xhEditor基本使用指南

您只需按照以下簡單步驟即可學(xué)會使用xhEditor:
下載最新版本xhEditor:http://xheditor.com/download
將下載的壓縮文件解壓縮,上傳其中的xheditor-zh-cn.min.js以及xheditor_emot、xheditor_plugins和xheditor_skin三個文件夾到網(wǎng)站相應(yīng)文件夾中
在需要調(diào)用xhEditor編輯器的網(wǎng)頁head標簽結(jié)束之前添加以下代碼:
<script type="text/javascript" src="/js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="/js/xheditor-zh-cn.min.js"></script>
注:jQuery和xhEditor的js文件路徑請根據(jù)你網(wǎng)站具體路徑情況相應(yīng)修改
在需要實現(xiàn)可視化的文本框textarea屬性中添加:
class="xheditor {skin:'default'}"
注:前面主參數(shù)也可以是xheditor-mfull、xheditor-mini或xheditor-simple,分別加載多行完全、迷你和簡單工具欄。后面大括號用來定義更多的初始化參數(shù),可以省略。

經(jīng)過以上步驟,你就已經(jīng)成功的將xhEditor編輯器安裝在你的網(wǎng)頁中。若需要學(xué)習(xí)更多xhEditor編輯器的使用技術(shù),請參閱:xhEditor進階使用。
2. xhEditor進階使用
2.1. 進階使用指導(dǎo)
2.2. 初始化參數(shù)列表
2.3. API函數(shù)接口列表
2.4. 上傳程序開發(fā)規(guī)范
2.5. 插件開發(fā)指南
2.6. 皮膚設(shè)計指南
2.7. 關(guān)于二次開發(fā)

2.1. 進階使用指導(dǎo)

閱讀本章節(jié)請先閱讀:xhEditor入門基礎(chǔ),若你已經(jīng)熟悉xhEditor的基本使用,請往下繼續(xù)。

xhEditor提供兩種方式初始化編輯器:
方法1:利用class屬性來初始化和傳遞各種初始化參數(shù),例:
class="xheditor {skin:'default'}"
方法2:利用xhEditor提供的jQuery插件接口來實現(xiàn)對特定textarea的初始化和傳遞參數(shù),例:
$('#elm1').xheditor();
或者
$('#elm1').xheditor({tools:'mini'});

特別說明:兩種初始化方法只能選擇其中一種使用,如果兩種方法的代碼同時存在頁面中,方法2的代碼不會有任何效果。

我們更傾向于推薦大家使用方法1,因為更簡單易用,不涉及任何的Javascript代碼。通過簡單的參數(shù)設(shè)置即可定制各種效果的編輯器界面,簡單易用且功能強大。

如果想實現(xiàn)更加復(fù)雜的交互應(yīng)用,或者希望xhEditor編輯器能夠和自己的Javascript代碼實現(xiàn)互相訪問,那么你可以選擇使用方法2,相對具有更大的自由空間。

xhEditor也提供了即時的卸載編輯器方法:
$('#elm1').xheditor(false);

2.2. 初始化參數(shù)列表

初始化參數(shù)示例代碼:
$('#elm1').xheditor({tools:'full',skin:'default',showBlocktag:true,internalScript:false,internalStyle:false,width:300,height:200,loadCSS:'http://xheditor.com/test.css',fullscreen:true,sourceMode:true,forcePtag:true,upImgUrl:"upload.php",upImgExt:"jpg,jpeg,gif,png"});

初始化參數(shù)列表:
tools:自定義工具按鈕
參數(shù)值:full(完全),mfull(多行完全),simple(簡單),mini(迷你)
或者自定義字符串,例如:'Cut,Copy,Paste,Pastetext,|,Source,Fullscreen,About'

完整按鈕表:
|:分隔符
/:強制換行
Cut:剪切
Copy:復(fù)制
Paste:粘貼
Pastetext:文本粘貼
Blocktag:段落標簽
Fontface:字體
FontSize:字體大小
Bold:粗體
Italic:斜體
Underline:下劃線
Strikethrough:中劃線
FontColor:字體顏色
BackColor:字體背景色
SelectAll:全選
Removeformat:刪除文字格式
Align:對齊
List:列表
Outdent:減少縮進
Indent:增加縮進
Link:超鏈接
Unlink:刪除鏈接
Img:圖片
Flash:Flash動畫
Media:Windows media player視頻
Emot:表情
Table:表格
Source:切換源代碼模式
Preview:預(yù)覽當前代碼
Print:打印
Fullscreen:切換全屏模式
About:關(guān)于xhEditor
skin:皮膚風(fēng)格選擇
參數(shù)值:default(默認風(fēng)格),o2007blue(Office 2007 藍色),o2007silver(Office 2007 銀色),vista(Vista),nostyle(NoStyle)
layerShadow:陰影的深度(按鈕面板和模式窗口的背景陰影)
參數(shù)值:0(不顯示陰影),大于0的數(shù)值(顯示陰影并設(shè)置陰影的深度)
clickCancelDialog:點擊任意位置取消按鈕面板功能
參數(shù)值:默認true(開啟點擊取消功能),false(關(guān)閉點擊取消功能,必需要點擊“取消”按鈕才能關(guān)閉按鈕面板)
showBlocktag:顯示段落標簽
參數(shù)值:true(顯示段落標簽),false(不顯示)
linkTag:樣式鏈接link標簽保留狀態(tài)
參數(shù)值:true(保留樣式鏈接link標簽),false(清理樣式鏈接link標簽)
internalScript:內(nèi)部JS代碼保留狀態(tài)
參數(shù)值:true(保留內(nèi)部JS代碼),false(清理內(nèi)部JS代碼)
inlineScript:內(nèi)聯(lián)JS代碼保留狀態(tài)
參數(shù)值:true(保留內(nèi)聯(lián)JS代碼),false(清理內(nèi)聯(lián)JS代碼)
internalStyle:內(nèi)部樣式保留狀態(tài)
參數(shù)值:true(保留內(nèi)部樣式),false(清理內(nèi)部樣式)
inlineStyle:內(nèi)聯(lián)樣式保留狀態(tài)
參數(shù)值:true(保留內(nèi)聯(lián)樣式),false(清理內(nèi)聯(lián)樣式)
width:編輯器寬度
參數(shù)值:不帶單位的數(shù)字,例:300
height:編輯器高度
參數(shù)值:不帶單位的數(shù)字,例:100
loadCSS:加載樣式
參數(shù)值:URL地址、URL數(shù)組以及直接內(nèi)部樣式,例如:'1.css'、['1.css','2.css']、'<style>body{font-size:20px;}</style>'<br />備注:1.0.0 RC3新添加加載內(nèi)部樣式功能
fullscreen:默認全屏顯示
參數(shù)值:true(全屏大小),false(標準大小)
sourceMode:默認源代碼模式
參數(shù)值:true(源代碼模式),false(編輯模式)
forcePtag:強制P標簽
參數(shù)值:true(強制使用P標簽),false(不強制),默認true
forcePasteText:強制將粘貼的內(nèi)容轉(zhuǎn)換為文本
參數(shù)值:true(強制轉(zhuǎn)文本),false(不轉(zhuǎn)文本),默認false
備注:v1.1.0新添加
disableContextmenu:禁用編輯區(qū)的右鍵菜單
參數(shù)值:true(禁用右鍵菜單),false(不禁用),默認false
備注:v1.1.0新添加
editorRoot:編輯器JS文件所在的根路徑
參數(shù)值:編輯器所在的根路徑,用在某些特殊情況下定位編輯器的根路徑,默認為空,讀取默認的編輯器根路徑
備注:v1.1.0新添加
shortcuts:自定義鍵盤快捷方式
參數(shù):快捷鍵對應(yīng)事件代碼的對象數(shù)組
示例:{'ctrl+enter':function(){$('#frmTest').submit();}}
備注:1.0.0 beta2新添加
urlBase:相對URL地址的基地址
參數(shù):字符串的URL地址,用以解決前后臺不在同一路徑的資源定位問題
備注:1.1.0新添加
urlType:本地URL地址強制轉(zhuǎn)換方式選擇
參數(shù):abs(絕對路徑),root(根路徑),rel(相對路徑)
備注:1.0.0 beta2新添加,v1.1.0版中名字由localUrl變更為urlType
emotPath:修改表情圖片的URL根路徑
參數(shù):字符串的URL地址,默認為空,指向編輯器路徑下的默認表情
備注:1.1.0新添加
emotMark:是否在表情img標簽上標注emot屬性
參數(shù):true(標注),false(不標注),默認為false
說明:若使用了ubb插件,請設(shè)置此屬性為true
備注:1.0.0 beta2新添加
emots:添加自定義表情
參數(shù):可定義多個JSON對象數(shù)組,示例如下:{qq:{name:'QQ',count:55,width:25,height:25,line:11},msn:{name:'MSN',count:40,width:22,height:22,line:8}}
name:表情分組名
count:表情數(shù)量
list:表情列表,例:{test1:'表情1',test2:'表情2'},鍵名代表文件名,擴展名必需為gif,鍵值代表alt信息
width:單個表情區(qū)域?qū)挾?,必需大于或等于表情最大寬?
height:單表情區(qū)域高度,必需大于或等于表情最大高度
line:單行顯示表情數(shù)量
說明:count和list必需選其中一個值,注意count模式插入表情img的alt為空
備注:1.0.0 beta2新添加
wordDeepClean:Word文檔深入清理選項
參數(shù):true(深入清理),false(不深入清理,保留style樣式效果),默認為true
說明:若網(wǎng)站應(yīng)用需要保留更多的Word樣式效果,請設(shè)置此值為false,不過產(chǎn)生的HTML代碼體積會大大增大
備注:1.0.0 beta2新添加
hoverExecDelay:懸停自動執(zhí)行延遲的時間
參數(shù):數(shù)值(單位毫秒),默認為100,設(shè)置為-1關(guān)閉此功能
備注:1.0.0 rc2新添加
defLinkText:超鏈接的默認文字
參數(shù)值:字符串(默認值:“點擊打開鏈接”)
說明:只在不選擇任何內(nèi)容的情況下才會用到這個參數(shù)值
modalWidth:showModal彈出窗口的默認寬度
參數(shù)值:數(shù)值,默認為350
說明:彈出窗口的默認寬度
modalHeight:showModal彈出窗口的默認高度
參數(shù)值:數(shù)值,默認為220
說明:彈出窗口的默認高度
modalTitle:showModal彈出窗口是否顯示上方的標題欄
參數(shù)值:true(顯示),false(不顯示)
說明:控制彈出窗口是否顯示上方的標題欄,默認為顯示,若需要顯示一個更定制個性化的iframe窗口,可通過此參數(shù)隱藏上方的標題欄
upBtnText:上傳按鈕的文字
參數(shù)值:任意字符串,默認值:“上傳”
備注:1.0.0 beta2新添加
html5Upload:是否開啟HTML5上傳支持
參數(shù)值:true(允許),false(不允許),默認為true允許
說明:本功能需要瀏覽器支持HTML5上傳
備注:1.0.0 Final新添加
upMultiple:允許一次上傳多少個文件
參數(shù)值:大于0的數(shù)值,默認:99,設(shè)置為1關(guān)閉多文件上傳
說明:本功能需要瀏覽器支持HTML5上傳
備注:1.0.0 RC3新添加
upLinkUrl:超鏈接文件上傳接收URL
參數(shù)值:接收用戶上傳的服務(wù)器端程序URL,默認留空為禁用超鏈接上傳功能,具體使用方法請參考demo8演示文件
注:可使用內(nèi)置變量:{editorRoot},代表當前編輯器的根路徑,例:{editorRoot}upload.php
upLinkExt:超鏈接上傳前限制本地文件擴展名
參數(shù)值:超鏈接上傳前限制的文件擴展名列表,默認為:zip,rar,txt,建議與服務(wù)端擴展名檢查列表一致
upImgUrl:圖片文件上傳接收URL
參數(shù)值:接收用戶上傳的服務(wù)器端程序URL,默認留空為禁用上傳功能,具體使用方法請參考demo8演示文件
注:可使用內(nèi)置變量:{editorRoot},代表當前編輯器的根路徑,例:{editorRoot}upload.php
upImgExt:圖片上傳前限制本地文件擴展名
參數(shù)值:圖片上傳前限制的文件擴展名列表,默認為:jpg,jpeg,gif,png,建議與服務(wù)端擴展名檢查列表一致
upFlashUrl:動畫文件上傳接收URL
參數(shù)值:接收用戶上傳的服務(wù)器端程序URL,默認留空為禁用上傳功能,具體使用方法請參考demo8演示文件
注:可使用內(nèi)置變量:{editorRoot},代表當前編輯器的根路徑,例:{editorRoot}upload.php
upFlashExt:動畫上傳前限制本地文件擴展名
參數(shù)值:動畫上傳前限制的文件擴展名列表,默認為:swf,建議與服務(wù)端擴展名檢查列表一致
upMediaUrl:視頻文件上傳接收URL
參數(shù)值:接收用戶上傳的服務(wù)器端程序URL,默認留空為禁用上傳功能,具體使用方法請參考demo8演示文件
注:可使用內(nèi)置變量:{editorRoot},代表當前編輯器的根路徑,例:{editorRoot}upload.php
upMediaExt:視頻上傳前限制本地文件擴展名
參數(shù)值:視頻上傳前限制的文件擴展名列表,默認為:avi,建議與服務(wù)端擴展名檢查列表一致
onUpload:文件上傳成功回調(diào)函數(shù)
參數(shù)值:成功后需要執(zhí)行的函數(shù)
說明:這個函數(shù)執(zhí)行時返回的值為上傳程序返回的msg變量,可能為字符串或者數(shù)組,若為字符串則直接代表url,若是數(shù)組,則必需包含一個url的變量,其它可由可開發(fā)者自定義
備注:1.0.0 beta2新添加
plugins:自定義按鈕之插件擴展
插件對象的屬性解釋:
c:樣式表名稱
t:插件名字(鼠標在按鈕上方時顯示)
s:快捷方式,例:"ctrl+enter"
h:是否鼠標懸停直接執(zhí)行,1:直接執(zhí)行(省略當前值代表不直接執(zhí)行)
e:按鈕點擊后需要執(zhí)行的代碼(省略執(zhí)行代碼,則把當前的插件名作為參數(shù),調(diào)用瀏覽器的execCommand函數(shù))

特別說明:
如果您希望樣式表存儲在系統(tǒng)自帶的模板目錄ui.css中,請將插件對象的樣式名留空,則會自動按照插件名來調(diào)用相應(yīng)的樣式,例如:xhEdtBtnCut、xhEdtBtnCopy,其中的Cut和Copy是插件名

具體調(diào)用方法請參考演示文件夾中的demo9


2.3. API函數(shù)接口列表

API接口示例代碼:
var editor=$('#elm1').xheditor({tools:'full',skin:'default'});
editor.focus();
editor.setSource('str')
sHtml=editor.getSource()
editor.appendHTML('<p>aaa</p>')
editor.pasteHTML('<p>aaa</p>')
editor.pasteText('str')
sHtml=editor.formatXHTML('<b>aaa</b>')
editor.toggleSource()
editor.toggleFullscreen()
alert(editor.settings.upImgExt);
editor.settings.upImgExt='txt,doc';

API接口列表:
focus:使編輯器獲得焦點
無參數(shù)
setSource:設(shè)置編輯器源代碼
參數(shù)1:要設(shè)置的源代碼內(nèi)容,例:'<p>aaa</p>'
getSource:返回編輯器格式后的源代碼
無參數(shù)
appendHTML:粘貼HTML內(nèi)容到編輯器結(jié)尾處
參數(shù)1:要粘貼的HTML代碼,例:'<p>uuu</p>'
注:0.9.5版添加
getSelect:返回當前選中的內(nèi)容
參數(shù)1:返回格式,可選'text'返回文本格式,其它所有值都返回HTML格式
pasteHTML:粘貼HTML內(nèi)容到編輯器當前光標處
參數(shù)1:要粘貼的HTML代碼,例:'<p>uuu</p>'
參數(shù)2:是否覆蓋粘貼,留空(覆蓋粘貼)、true(粘貼在光標選擇區(qū)域之前)、false(粘貼在光標選擇區(qū)域之后)
pasteText:粘貼文本到編輯器當前光標處
參數(shù)1:要粘貼的文本,例:'這里的內(nèi)容完全原樣顯示<strong>aaa</strong>'
參數(shù)2:是否覆蓋粘貼,留空(覆蓋粘貼)、true(粘貼在光標選擇區(qū)域之前)、false(粘貼在光標選擇區(qū)域之后)
formatXHTML:格式化XHTML代碼
參數(shù)1:需要格式化的HTML代碼,例:'<b>aaa</b>',返回'<strong>aaa</strong>'
參數(shù)2:是否代碼縮進換行,true(執(zhí)行縮進格式化),false(不執(zhí)行縮進格式化),默認為false
toggleSource:在源代碼模式和編輯模式之間切換
參數(shù)1:空(切換),true(顯示源代碼模式),false(顯示編輯模式)
toggleFullscreen:在全屏模式和標準大小之間切換
參數(shù)1:空(切換),true(顯示全屏模式),false(顯示標準模式)
toggleShowBlocktag:切換塊標簽顯示狀態(tài)
參數(shù)1:空(切換),true(切換為顯示塊標簽),false(切換為不顯示塊標簽)
addShortcuts:添加快捷鍵
參數(shù)1:快捷鍵值,例:'ctrl+enter'
參數(shù)2:用戶按下快捷鍵后需要響應(yīng)的程序代碼,例:function(){$('#frmTest').submit();}
說明:允許為某個相同快捷鍵值重復(fù)添加多個響應(yīng)代碼
備注:1.0.0 beta2新添加
delShortcuts:刪除快捷鍵
參數(shù)1:快捷鍵值,例:'ctrl+enter'

備注:1.0.0 Final新添加
exec:立即執(zhí)行按鈕及插件
參數(shù)1:工具按鈕名稱(不區(qū)分大小寫),例:Link、img
說明:此函數(shù)可以在插件內(nèi)部或者外部Javascript代碼中進行調(diào)用
showModal:顯示模式窗口
參數(shù)1:模式窗口的標題title
參數(shù)2:模式窗口的內(nèi)容content
參數(shù)3:模式窗口的寬度w
參數(shù)4:模式窗口的高度h
參數(shù)5:模式窗口關(guān)閉時的回調(diào)函數(shù)onRemove
showIframeModal:顯示iframe式的模式窗口
參數(shù)1:模式窗口的標題
參數(shù)2:iframe的地址ifmurl,可使用內(nèi)置變量:{editorRoot},代表當前編輯器的根路徑,例:{editorRoot}xheditor_plugins/test.html
參數(shù)3:提供給目標iframe頁面回調(diào)用的回調(diào)函數(shù),可以在iframe頁面中以這樣的形式調(diào)用:callback('1.gif');
參數(shù)4:模式窗口的寬度w
參數(shù)5:模式窗口的高度h
參數(shù)6:模式窗口關(guān)閉時的回調(diào)函數(shù)onRemove
settings:獲取或者修改編輯器內(nèi)部參數(shù)
internalScript:是否清除內(nèi)部代碼
inlineScript:是否清除內(nèi)聯(lián)代碼
internalStyle:是否清除內(nèi)部樣式
inlineStyle:是否清除內(nèi)聯(lián)樣式
forcePtag:強制使用P標簽
upLinkUrl:超鏈接上傳接口地址
upLinkExt:超鏈接本地上傳擴展限制
upImgUrl:圖片上傳接口地址
upImgExt:圖片本地上傳擴展限制
upFlashUrl:動畫上傳接口地址
upFlashExt:動畫本地上傳擴展限制
upMediaUrl:視頻上傳接口地址
upMediaExt:視頻本地上傳擴展限制
beforeSetSource:在設(shè)置源代碼到編輯器前調(diào)用此函數(shù)
beforeGetSource:從編輯器返回源代碼前調(diào)用此函數(shù)
focus:編輯器獲得焦點時回調(diào)此函數(shù)
blur:編輯器失去焦點時回調(diào)此函數(shù)

注:修改有效變量僅限以上,其它的變量都僅在編輯器初始化時使用


2.4. 上傳程序開發(fā)規(guī)范


上傳接收程序開發(fā)必讀:
上傳程序分標準HTML4上傳和HTML5上傳兩種情況處理:
1, HTML4上傳使用標準的表單上傳域,上傳文件域的name為:filedata
2, HTML5上傳的整個POST數(shù)據(jù)流就是上傳的文件完整數(shù)據(jù),而本地文件名等信息儲存于HTTP_CONTENT_DISPOSITION這個服務(wù)器變量中
返回內(nèi)容必需是標準的json字符串,結(jié)構(gòu)可以是如下:{"err":"","msg":"200906030521128703.gif"} 或者 {"err":"","msg":{"url":"200906030521128703.jpg","localfile":"test.jpg","id":"1"}} 注:若選擇結(jié)構(gòu)2,則url變量是必有

需了解更多細節(jié),請參考發(fā)行包中的demos文件夾。其中upload.php、upload.asp、upload.aspx僅為演示參考代碼,若您使用的是其它的服務(wù)器腳本語言,請自行對初始化參數(shù)中的upLinkUrl、upImgUrl、upFlashUrl和upMediaUrl進行修改,并開發(fā)相應(yīng)服務(wù)器上傳接收程序。若您希望在自己的項目中實際使用,請自行修改代碼或者重新開發(fā),開發(fā)過程中請注意上傳文件的格式及大小限制,注意服務(wù)器腳本安全問題。


上傳文件管理建議方案:
在編輯器初始化時在upload.php后面跟上一個服務(wù)器生成的絕對唯一的跟蹤值,例如:upload.php?infoid=123
在服務(wù)器接收程序中以這個跟蹤值保存到數(shù)據(jù)庫中,同時也可以限制單個跟蹤值下總上傳文件數(shù)或者總文件大小,否則就是一個可以上傳無限個文件的漏洞了
最終當前表單提交時,再根據(jù)編輯器提交的HTML內(nèi)容和數(shù)據(jù)庫中上傳內(nèi)容進行比較,刪除所有沒有使用的上傳文件
定期由服務(wù)器腳本刪除上傳數(shù)據(jù)庫中沒提交的文件記錄,這樣就能防止別人將你的網(wǎng)站作為免費相冊空間了


2.5. 插件開發(fā)指南

標準插件開發(fā)流程:
設(shè)計插件圖標并在頁面中定義好CSS
定義插件參數(shù)并寫入初始化參數(shù)plugins
編寫插件調(diào)用時要執(zhí)行的代碼

下面我們就demo09中的一個最簡單插件作介紹:
<style type="text/css">
.testClassName {
background:transparent url(img/plugin.gif) no-repeat 20px 20px;
background-position:3px 3px;
}
</style>
test7:{c:'testClassName',t:'測試7:showIframeModal (Ctrl+7)',s:'ctrl+7',e:function(){
var _this=this;
_this.showIframeModal('測試showIframeModal接口','uploadgui.html',function(v){_this.loadBookmark();_this.pasteText('返回值:/r/n'+v);},500,300);
}}

這個插件實現(xiàn)的功能是打開一個iframe,并將iframe返回的參數(shù)字符串插入到當前編輯器光標處。
其中test7為插件的name,用來在tools初始化參數(shù)中調(diào)用
c:'testClassName'為插件的樣式名稱
t:'測試7:showIframeModal (Ctrl+7)'是鼠標放在按鈕上顯示的提示文字
s:'ctrl+7'是定義插件的快捷方式,在編輯器區(qū)域里按設(shè)置的快捷方式就會執(zhí)行此插件事件;
e:function(){}為插件點擊后要執(zhí)行的代碼

特別說明:
插件執(zhí)行函數(shù)中可以用this.的方式調(diào)用2.3.章節(jié)中所有的API接口函數(shù)。如果使用回調(diào)函數(shù),請將this變量保存在臨時變量中,例如_this;
在某些瀏覽器下,打開會轉(zhuǎn)移焦點的操作界面,會導(dǎo)致編輯區(qū)域焦點丟失。例如:showIframeModal,在回調(diào)函數(shù)中需先執(zhí)行l(wèi)oadBookmark函數(shù)恢復(fù)焦點,之后才能調(diào)用pasteHTML等函數(shù);
如果希望樣式表存儲在系統(tǒng)自帶的模板目錄ui.css中,請將插件對象樣式名留空,則會自動按照插件名來調(diào)用相應(yīng)的樣式,例如:xhEdtBtnCut、xhEdtBtnCopy,其中的Cut和Copy是插件名;

若希望xhEditor開發(fā)團隊為您定制特殊的功能、皮膚和插件,請參閱我們提供的商業(yè)服務(wù)頁面。


2.6. 皮膚設(shè)計指南

xhEditor的皮膚保存在xheditor_skin文件夾中,每個皮膚一個子文件夾,文件夾結(jié)構(gòu)如下:
xheditor_skin
└─default
├─ui.css
├─iframe.css
└─img
├─icons.gif
├─...
└─loading.gif
編輯器按鈕、面板、模式窗口等樣式全部統(tǒng)一存儲在ui.css文件中
編輯區(qū)域的樣式存儲在iframe.css文件中
編輯器內(nèi)核用到的圖片及css文件中用到的所有圖片統(tǒng)一存儲在img文件夾中
ui.css文件簡單解析

xheLayout:編輯器table樣式;xheTool:工具按鈕所在區(qū)域的樣式;xheButton:按鈕樣式;xhePanel:操作面板的樣式;xheMenu:菜單樣式;xheEmot:表情樣式;xheColor:顏色選擇器的樣式;xheDialog:面板上的對話框樣式;xheModal:模式窗口樣式;

xhEditor皮膚結(jié)構(gòu)相對非常簡單,有一定的HTML和CSS設(shè)計基礎(chǔ)即可完成設(shè)計工作。

若希望xhEditor開發(fā)團隊為您定制特殊的功能、皮膚和插件,請參閱我們提供的商業(yè)服務(wù)頁面。


2.7. 關(guān)于二次開發(fā)

由于二次開發(fā)相對復(fù)雜度較高,需要對xhEditor源代碼結(jié)構(gòu)熟悉,而開發(fā)者的水平有高有低,因此容易出現(xiàn)的問題也五花八門。鑒于這個原因,xhEditor開發(fā)團隊對非商業(yè)授權(quán)用戶不提供任何的技術(shù)文檔和技術(shù)支持,希望大家理解。

若希望xhEditor開發(fā)團隊為您定制特殊的功能、皮膚和插件,請參閱我們提供的商業(yè)服務(wù)頁面。

 


3. 其它相關(guān)
3.1. 使用常見問題


3.1. 使用常見問題
xhEditor能兼容哪些jQuery版本?
我的網(wǎng)頁是GB2312編碼的,怎樣才能使xhEditor編輯器沒有亂碼?
正常加載了xhEditor,讀取textarea的value值,為什么讀取不到最新編輯結(jié)果?
怎么添加自定義的表情?
怎么覆蓋編輯器自帶的默認表情?
當前頁面設(shè)置了document.domain,如何讓xhEditor工作正常?
textarea處在隱藏的區(qū)域中,如何初始化編輯器?
使用普通表單提交,怎么每次服務(wù)端取到的值總是之前舊的編輯結(jié)果?
xhEditor能兼容哪些jQuery版本?

xhEditor最初的版本是基于jQuery 1.3.2開發(fā)的,因此目前v1.0系列的所有版本都能最大的兼容1.3.2。為了獲得更好的代碼性能,目前xhEditor官方更建議使用最新的1.4.2版本。

雖然說v1.0版本系列能最大的兼容jQuery 1.3.2,但是在實際測試過程中,也發(fā)現(xiàn)一個不可修正的問題:在IE6下無法使用縮略圖上傳模式。如果你不需要使用縮略圖模式,可以在jQuery 1.3.2基礎(chǔ)上完美的運行xhEditor v1.0版本系列。
我的網(wǎng)頁是GB2312編碼的,怎樣才能使xhEditor編輯器沒有亂碼?

如果使用最新版xhEditor的mini壓縮版本,因為里面的文字完全utf-8編碼化,可以直接調(diào)用,不會出現(xiàn)亂碼現(xiàn)象。

如果使用的是源代碼js文件或早期的xhEditor版本,在非utf-8編碼的網(wǎng)頁中使用就會出現(xiàn)亂碼現(xiàn)象,只需將script的charset屬性設(shè)置成utf-8即可完美解決:
<script type="text/javascript" charset="utf-8" src="xheditor-zh-cn.js"></script>
正常加載了xhEditor,讀取textarea的value值,為什么讀取不到最新編輯結(jié)果?

目前網(wǎng)絡(luò)中所有的在線編輯器都是利用新創(chuàng)建的iframe來實現(xiàn)可視化編輯功能,xhEditor也不例外,所以在提交前必需要將最新的編輯結(jié)果重新同步到原來的textarea。

xhEditor默認會在textarea所在的form對象中綁定onsubmit事件,當用戶點擊submit按鈕時,xhEditor就會將最新結(jié)果同步回textarea,隨后隨表單中的其它表單項一同提交到服務(wù)端腳本。因此,如果不需要用Javascript額外處理,普通的表單式提交是沒任何問題的。

如果網(wǎng)頁中需要用Javascript額外處理編輯結(jié)果,比如ajax提交表單,則有三種解決方案:
使用jQuery的事件綁定或者標準DOM綁定方法在form上綁定submit事件(綁定代碼必需在xhEditor初始化代碼后面),即是在xhEditor把值回傳后再讀取,在相應(yīng)綁定的函數(shù)中讀取textarea的value值即是最新編輯結(jié)果;
使用jQuery的標準取值方法:$('#textarea_id').val();
使用xhEditor提供的專用讀值A(chǔ)PI接口:editor.getSource();

怎么添加自定義的表情?

可以在初始化參數(shù)中使用emots參數(shù)來自

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
日本一区不卡| 136国产福利精品导航| 中文字幕字幕中文在线中不卡视频| 高清国语自产拍免费一区二区三区| 久久综合色之久久综合| www成人免费观看| 日韩中文字幕一区二区高清99| 欧美三级小说| 91免费观看在线| 欧美日韩另类字幕中文| 日韩电影免费在线观看网站| 亚洲sss视频在线视频| 午夜av中文字幕| 国产99久久久国产精品潘金网站| 国产suv精品一区| 亚洲区 欧美区| 免费91视频| 国模精品视频一区二区三区| 久久久久久久精| 日韩一区国产二区欧美三区| 亚洲婷婷伊人| 最新中文字幕日本| 在线日本制服中文欧美| 天天爱天天做天天操| 免费av网站在线看| 欧美日韩三级视频| 久久久久久91亚洲精品中文字幕| 91精品国产色综合久久不卡电影| 99国产精品视频免费观看一公开| av天堂一区二区三区| 91肉色超薄丝袜脚交一区二区| 91久久久久| 97精品中文字幕| 91麻豆.com| 欧美一级日韩一级| 国产日韩精品在线看| 伊人狠狠色丁香综合尤物| 国产成人精品视频ⅴa片软件竹菊| 无码av免费精品一区二区三区| 喷白浆一区二区| 国产精品一区二三区| 精品人妻一区二区三区免费| 麻豆精品国产传媒mv男同| 雨宫琴音一区二区在线| 18视频免费网址在线观看| 一区二区三区欧美亚洲| 日韩欧美国产综合在线一区二区三区| 国产精品第三页| 青青久久av| 日本 国产 欧美色综合| 日韩一区二区三区四区五区六区| 亚洲欧洲精品一区二区| 欧美激情免费看| 777米奇影视第四色| 992kp免费看片| 美女搞黄视频在线观看| 你懂的在线观看视频| 国产精品狠色婷| h片在线免费| 91精品国产色综合久久不卡98口| 日韩欧美另类中文字幕| 中文字幕日韩免费视频| 国内一区二区三区| 久久综合九色综合欧美就去吻| 精品国产污网站| 中文字幕乱码一区| av网址在线观看免费| 最新中文字幕av| 国模人体一区二区| 国产69久久精品成人| 国产福利微拍精品一区二区| 欧美日韩精品免费观看| 嫩草影院发布页| 欧美一区二区三区在线电影| 欧美6一10sex性hd| 亚洲毛片在线看| 91欧美精品午夜性色福利在线| 久久人人爽人人爽人人片av高请| 91福利精品在线观看| 91精品国产91久久| 亚洲一区二区三区欧美| 免费国产羞羞网站美图| 91精品国产高清一区二区三区| 洋洋av久久久久久久一区| 国产一区二区三区精彩视频| 天天操天天操天天干| 日本韩国欧美| 国产精品伦理久久久久久| 欧美激情久久久久久久久久久| 日韩国产一区二| 欧美a一欧美| 噜噜噜在线观看播放视频| 一本久道久久综合多人| 欧美精品三区| 一区二区三区四区精品| 亚洲乱码中文字幕| 菠萝蜜影院一区二区免费| 精品国产一区二区三区不卡蜜臂| 国产精品青草久久久久福利99| 日韩一中文字幕| 先锋影音av资源站| 国产精品无码免费专区午夜| 韩国成人在线视频| 日韩大片免费观看视频播放| 成人性生活视频免费看| 中文字幕+乱码+中文字幕| 日韩精品一区二区三区电影| 久久九九精品99国产精品| 成熟人妻av无码专区| 性网站在线免费观看| 东方aⅴ免费观看久久av| 97人人模人人爽人人澡| 后入内射欧美99二区视频| 中文字幕视频一区| 最近中文字幕一区二区三区| 日本高清不卡一区二区三区视频| 在线高清一区| 午夜小视频在线| 天堂在线一二区| 玉足女爽爽91| 国产成人精品亚洲线观看| 99热亚洲精品| 免费在线观看a视频| 你懂的国产在线| 无码人妻精品一区二区蜜桃色欲| 亚洲动漫在线观看| av在线无限看| 91精品久久久久久| 欧美变态tickling挠脚心| 性色a∨人人爽网站| 中日韩脚交footjobhd| 亚洲激情欧美| 欧美人体一区二区三区| 人人天天夜夜| 精品处破学生在线二十三| 成人欧美一区二区| 中文字幕中文字幕一区三区| 无码日韩精品一区二区免费| 国产高潮又爽又无遮挡又免费| 国产精品77777| 国产一区二区伦理片| 亚洲精品一区二区三区在线观看| 可以看毛片的网址| 久久影院朴妮唛| av成人老司机| 国产大片在线免费观看| 亚洲一线二线三线久久久| 国产精品嫩草影视| 在线观看视频网站你懂得| 久久久久亚洲无码| 欧美v在线观看| 日本在线免费观看视频| 亚洲精品影片| 色天使色偷偷av一区二区| 成人av免费观看| 337p粉嫩大胆噜噜噜鲁| av中文在线观看| 精品国产一区二区三区久久久狼| 欧美一级大片| 国产综合久久久久久久久久久久| 精品无码一区二区三区在线| 欧美日韩xxxxx| 欧美成人一区二区在线| 91n在线视频| 任你弄精品视频免费观看| 精品国产一区二区三区四区阿崩| 人人妻人人藻人人爽欧美一区| 亚洲一区日韩精品| 亚洲天堂av综合网| 2019亚洲男人天堂| 日韩精品在线观| 日韩高清在线观看一区二区| 欧美在线视频观看免费网站| 日韩精品黄色| 精品无码国产污污污免费网站| 亚洲女同志亚洲女同女播放| 日本成年人网址| 黄色一级片网址| 欧美日韩爆操| 国产视频一区二区不卡| 国产成人午夜精品| 日韩视频国产视频| 日本中文不卡| 青青青草视频在线| 91精品亚洲一区在线观看| 91国内精品野花午夜精品| 看片的网站亚洲| 小泽玛利亚一区| 国产精品www网站| 欧美色国产精品| 日韩1区2区3区| 国产精品成人午夜| a∨色狠狠一区二区三区| 丝袜在线视频| 日批视频免费观看| 97在线观看视频国产| 国产精品青青草| 欧美96在线| 亚洲а∨天堂久久精品2021| 久草视频一区二区| 国产精品影视| 色av一区二区| 岛国精品在线| 成人看片在线| 久久久久久久久久影院| 国产精品美女久久久久aⅴ| 日本三级黄色网址| 中文字幕国产免费| 国产l精品国产亚洲区久久| 亚洲 国产 欧美 日韩| 在线视频 日韩| 国产欧美一区二区精品性色超碰| 麻豆国产精品官网| 18激情网站| 亚洲视频在线观看免费视频| 日韩成人免费看| 8mav模特福利视频在线观看| 久久日韩粉嫩一区二区三区| 性网站在线免费观看| 亚洲男人天堂九九视频| 美女视频黄 久久| 色偷偷亚洲第一综合| 日韩精品免费一区二区三区| 亚洲高清资源综合久久精品| 一本一道精品欧美中文字幕| 欧美激情免费| 91久久国产婷婷一区二区| 北条麻妃一区二区三区| 国内在线高清免费视频| 欧美韩国一区| av观看成片免费网站| 亚洲午夜久久久久中文字幕| 91福利区在线观看| 日日骚久久av| 亚洲国产日韩精品| 国产精品久久久久久久久久东京| 精品久久电影| 成人精品一区二区三区电影免费| 国产精品一区二区在线| 欧美激情福利| 岛国av一区二区| 色综合久久五月天| 激情小说欧美色图| 亚洲码欧美码一区二区三区| 1234区在线观看视频免费| 久热视线观看免费视频| 午夜激情小视频| 午夜国产欧美理论在线播放| 亚洲欧美卡通另类91av| 亚洲精品国自产拍在线观看| 强制捆绑调教一区二区| 国产精品乱码人人做人人爱| 欧美精品tushy高清| 97人妻精品一区二区三区免费| 欧美成人三级在线视频| 伊人伊成久久人综合网站| 色综合色综合色综合色综合色综合| 最新中文字幕免费视频| 成年人在线免费| 日韩精品国产一区| 亚洲妇女屁股眼交7| 亚洲美洲欧洲综合国产一区| 欧美美女福利视频| 天天影视色香欲综合| 含羞草久久爱69一区| 亚洲网站三级| 波多野结衣先锋影音| 中文字幕精品一区日韩| 国产一区二区三区在线观看免费视频| 一区二区三区的久久的视频| 久久久久久国产精品日本| 99视频免费观看蜜桃视频| 精品无码久久久久久国产| 一区二区三区在线免费看| 亚洲图片小说网| 3d动漫精品啪啪一区二区三区免费| 国产成人在线视频播放| 国产精品私拍pans大尺度在线| 亚洲第一网中文字幕| 日韩视频一区二区三区在线播放| 日韩精品av一区二区三区| 日韩中文字幕在线视频播放| 在线免费观看色| 国产亚洲精品美女久久久久久久久久| 成人av电影在线观看| 久久精品国产99久久99久久久| 国产 国语对白 露脸| 爱高潮www亚洲精品| 亚洲视频在线观看视频| 午夜一区在线观看| 国产成人高清视频| 伊人久久大香线蕉综合四虎小说| 国产午夜精品久久久久| 成人av一区| 亚洲图片欧美另类| 人妻无码一区二区三区| 色欲色香天天天综合网www| 免费裸体美女网站| 好看的中文字幕在线播放| 疯狂撞击丝袜人妻| 星空无限传媒在线| 嫩草嫩草嫩草| 国产三级精品视频| 国产午夜精品一区二区三区四区| 欧美猛男男办公室激情| 男男电影完整版在线观看| 欧洲激情一区二区| 色呦呦视频在线| 国产二区国产一区在线观看| 久久久99爱| 国精品一区二区三区| 久久亚洲二区三区| 无码人妻少妇色欲av一区二区| 久久性爱视频网站| 日韩av毛片网| 日韩精品乱码免费| 成人性生交视频免费观看| 亚洲一区在线视频| 国产一区二区导航在线播放| 潘金莲激情呻吟欲求不满视频| 国产一级做a爰片久久毛片男| 日韩影院一区二区| 欧美人牲a欧美精品| 国产毛片毛片毛片毛片毛片毛片| 精品久久久久亚洲| 欧美精品一区二区三区免费| 91sp网站在线观看入口| xxxx国产精品|