編輯器中designMode和contentEditable的屬性的介紹
更新時(shí)間:2008年11月22日 12:33:49 作者:
先解釋一下在線編輯器的原理:首先需要IE5.0以上版本的支持.因?yàn)镮E5.0以上版本有一個(gè)編輯狀態(tài),designMode是document的屬性,意思是設(shè)置或獲取表明文檔是否可被編輯的值,默認(rèn)值為off或Inherit
HtmlEdit.document.designMode="On";
HtmlEdit是iframe對(duì)象ID
IE 中可以設(shè)置contentEditable="true"
把div的contentEditable屬性設(shè)置為 true,在IE瀏覽器中就可以看到效果了,div中元素都變成可以編輯的了。
<div id="tt" contentEditable="true"></div>
<body contentEditable="true"><!--則整個(gè)頁(yè)面都可以編輯了-->。
Firefox中可以 使用javascript語(yǔ)句設(shè)置屬性contentDocument.designMode為 "on"
iframeName.document.designMode="on" ;
其中iframeName 為iframe控件的name屬性。
在 IE7和 FireFox2.0中測(cè)試通過(guò)。如果想先初始化加入一些內(nèi)容及樣式,代碼示例如下:
if(navigator.appName == "Microsoft Internet Explorer")
{
var IframeID=frames["HtmlEditor"];
if(navigator.appVersion.indexOf("MSIE 6.0",0)==-1){IframeID.document.designMode="On"}
IframeID.document.open();
IframeID.document.write(StyleEditorHeader);
IframeID.document.close();
IframeID.document.body.contentEditable = "True";
IframeID.document.body.innerHTML=HidenObjValue;
IframeID.document.body.style.fontSize="10pt";
}else
{
var _FF = navigator.userAgent.indexOf("Firefox")>-1?true:false;
var IframeID=getObject("HtmlEditor");
HtmlEditor=IframeID.contentWindow;
HtmlEditor.document.designMode="On"
HtmlEditor.document.open();
HtmlEditor.document.write(StyleEditorHeader);
HtmlEditor.document.close();
HtmlEditor.document.body.contentEditable = "True";
HtmlEditor.document.body.innerHTML=HidenObjValue;
}
HtmlEdit是iframe對(duì)象ID
IE 中可以設(shè)置contentEditable="true"
把div的contentEditable屬性設(shè)置為 true,在IE瀏覽器中就可以看到效果了,div中元素都變成可以編輯的了。
<div id="tt" contentEditable="true"></div>
<body contentEditable="true"><!--則整個(gè)頁(yè)面都可以編輯了-->。
Firefox中可以 使用javascript語(yǔ)句設(shè)置屬性contentDocument.designMode為 "on"
iframeName.document.designMode="on" ;
其中iframeName 為iframe控件的name屬性。
在 IE7和 FireFox2.0中測(cè)試通過(guò)。如果想先初始化加入一些內(nèi)容及樣式,代碼示例如下:
復(fù)制代碼 代碼如下:
if(navigator.appName == "Microsoft Internet Explorer")
{
var IframeID=frames["HtmlEditor"];
if(navigator.appVersion.indexOf("MSIE 6.0",0)==-1){IframeID.document.designMode="On"}
IframeID.document.open();
IframeID.document.write(StyleEditorHeader);
IframeID.document.close();
IframeID.document.body.contentEditable = "True";
IframeID.document.body.innerHTML=HidenObjValue;
IframeID.document.body.style.fontSize="10pt";
}else
{
var _FF = navigator.userAgent.indexOf("Firefox")>-1?true:false;
var IframeID=getObject("HtmlEditor");
HtmlEditor=IframeID.contentWindow;
HtmlEditor.document.designMode="On"
HtmlEditor.document.open();
HtmlEditor.document.write(StyleEditorHeader);
HtmlEditor.document.close();
HtmlEditor.document.body.contentEditable = "True";
HtmlEditor.document.body.innerHTML=HidenObjValue;
}
相關(guān)文章
整合ckeditor+ckfinder,解決上傳文件路徑問(wèn)題
現(xiàn)在fckeditor已經(jīng)改名為ckeditor,上傳控件也分離為ckfinder,按照說(shuō)明文檔的默認(rèn)配置會(huì)出現(xiàn)上傳路徑不正確的情況,因?yàn)槲覀兊木W(wǎng)站可以通過(guò)定義默認(rèn)網(wǎng)站、虛擬目錄、以及放在網(wǎng)站的子目錄下進(jìn)行訪問(wèn)2011-11-11FCKeditor 2.6.5 ASP環(huán)境安裝配置使用說(shuō)明
今天用到在線編輯器在asp環(huán)境下上傳竟然無(wú)效。找了好久才找到這介紹,現(xiàn)備份于此,需要的朋友可以參考下2012-03-03javascript 在線文本編輯器實(shí)現(xiàn)代碼
javascript 在線文本編輯器實(shí)現(xiàn)代碼,非常值得學(xué)習(xí)。2010-03-03百度UEditor修改右下角統(tǒng)計(jì)字?jǐn)?shù)包含html樣式
百度UEditor修改右下角統(tǒng)計(jì)字?jǐn)?shù)默認(rèn)只統(tǒng)計(jì)前臺(tái)所見(jiàn)的文字個(gè)數(shù),如何讓右下角統(tǒng)計(jì)字?jǐn)?shù)包含html樣式,需要的朋友可以參考下2014-07-07FCKEidtor 自動(dòng)統(tǒng)計(jì)輸入字符個(gè)數(shù)(IE)
由于項(xiàng)目需要,需要做字?jǐn)?shù)統(tǒng)計(jì),于是寫了一個(gè)JS計(jì)算字符個(gè)數(shù),如果輸入的字符數(shù)大于100個(gè)字符,就彈出提示,點(diǎn)擊【確定】后,自動(dòng)截取為100個(gè)字符。2009-05-05FCKEditor超級(jí)鏈接默認(rèn)新窗口打開(kāi)的修改方法
經(jīng)常在后臺(tái)編輯超鏈接的朋友,希望將頁(yè)面鏈接,默認(rèn)是新窗口打開(kāi),因?yàn)檫@樣用戶體驗(yàn)好點(diǎn),所以將FCKEditor簡(jiǎn)單的修改下。2010-06-06