HTML在線編輯器的基本概念與相關(guān)資料
更新時(shí)間:2007年03月09日 00:00:00 作者:
首先要有一個(gè)編輯框,這個(gè)編輯框其實(shí)就是一個(gè)可編輯狀態(tài)的網(wǎng)頁(yè), 我們用iframe來(lái)建立編輯框。
<IFRAME id=“HtmlEdit” style="WIDTH: 100%; HEIGHT: 296px" marginWidth=“0” marginHeight=“0”></IFRAME>
并且在加上javascript代碼來(lái)指定HtmlEdit有編輯功能:
<script language="javascript">
var editor;
editor = document.getElementById("HtmlEdit").contentWindow;
//只需鍵入以下設(shè)定,iframe立刻變成編輯器。
editor.document.designMode = 'On';
editor.document.contentEditable = true;
//但是IE與FireFox有點(diǎn)不同,為了兼容FireFox,所以必須創(chuàng)建一個(gè)新的document。
editor.document.open();
editor.document.writeln('<html><body></body></html>');
editor.document.close();
//字體特效 - 加粗方法一
function addBold()
{
editor.focus();
//所有字體特效只是使用execComman()就能完成。
editor.document.execCommand("Bold", false, null);
}
//字體特效 - 加粗方法二
function addBold()
{
editor.focus();
//獲得選取的焦點(diǎn)
var sel = editor.document.selection.createRange();
insertHTML("<b>"+sel.text+"</b>");
}
function insertHTML(html)
{
if (editor.document.selection.type.toLowerCase() != "none")
{
editor.document.selection.clear() ;
}
editor.document.selection.createRange().pasteHTML(html) ;
}
</script>
WEB在線編輯器原理
轉(zhuǎn)載自:http://blog.fhuang.com/article.asp?id=239
從eWebEditor到 FCKeditor現(xiàn)在有很多很多的在線編輯器了,功能都很強(qiáng),很多,但是其基本原理卻都很簡(jiǎn)單
我發(fā)現(xiàn)的編輯器主要有3大類,我總結(jié)下,把各自的優(yōu)缺點(diǎn)都寫(xiě)下
直接用textarea 標(biāo)簽
優(yōu)點(diǎn):速度快,提交方便,可以用UBB標(biāo)簽來(lái)彌補(bǔ)不能所見(jiàn)所得
缺點(diǎn):不直觀,功能非常少
用 DIV或者TABLE的CONTENTEDITABLE 標(biāo)簽,屬性來(lái)讓一個(gè)區(qū)域可以編輯
優(yōu)點(diǎn):可以很直觀,可以做各種效果
缺點(diǎn):此標(biāo)簽在mozilla下不可用,只適合IE瀏覽器,且對(duì)js要求高
用iframe或者frame的中的document的document.designMode ="On" 來(lái)實(shí)現(xiàn)可編輯
優(yōu)點(diǎn):具有上面第二條的全部?jī)?yōu)點(diǎn),并且還多瀏覽器比如FF等支持
缺點(diǎn):對(duì)js要求高
下面是第三點(diǎn)的一個(gè)簡(jiǎn)單例子代碼
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁(yè)面才能執(zhí)行]
相關(guān)文章
javascript中導(dǎo)出與導(dǎo)入實(shí)現(xiàn)模塊化管理教程
這篇文章主要給大家介紹了關(guān)于javascript中導(dǎo)出與導(dǎo)入實(shí)現(xiàn)模塊化管理的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
jqplot通過(guò)ajax動(dòng)態(tài)畫(huà)折線圖的方法及思路
這篇文章主要介紹了2013-12-12
javascript設(shè)計(jì)模式之策略模式學(xué)習(xí)筆記
這篇文章主要介紹了javascript設(shè)計(jì)模式之策略模式學(xué)習(xí)筆記,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-02-02
基于JS實(shí)現(xiàn)密碼框(password)中顯示文字提示功能代碼
這篇文章主要介紹了實(shí)現(xiàn)密碼框(password)中顯示文字提示功能代碼,在項(xiàng)目開(kāi)發(fā)中經(jīng)常會(huì)用到,需要的朋友可以參考下2016-05-05
淺談Javascript如何實(shí)現(xiàn)勻速運(yùn)動(dòng)
這篇文章主要介紹了淺談Javascript如何實(shí)現(xiàn)勻速運(yùn)動(dòng)的方法及相關(guān)代碼,需要的朋友可以參考下2014-12-12
JavaScript實(shí)現(xiàn)樹(shù)結(jié)構(gòu)轉(zhuǎn)換的五種方法總結(jié)
在?JavaScript?編程中,將數(shù)組轉(zhuǎn)換為樹(shù)結(jié)構(gòu)是一個(gè)常見(jiàn)的需求。本篇博客將介紹五種常用的方法來(lái)實(shí)現(xiàn)數(shù)組轉(zhuǎn)樹(shù)結(jié)構(gòu),希望對(duì)大家有所幫助2023-03-03
微信小程序調(diào)用wx.getImageInfo遇到的坑解決
這篇文章主要介紹了微信小程序調(diào)用wx.getImageInfo遇到的坑解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05

