麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 網站 > 軟件應用 > 正文

一款支持插入表情的編輯器實現代碼(簡單思路挺重要)

2024-09-06 19:16:46
字體:
來源:轉載
供稿:網友
下面是一個表情列表,為了簡單我直接在li里面放圖片的文件名稱,而class 屬性用來存放對應的標記
復制代碼 代碼如下:

<ul id="faceList">
<li class="wx">0.gif</li>
<li class="pz">1.gif</li>
<li class="se">2.gif</li>
</ul>

接下來把上面的 li 變成 img
復制代碼 代碼如下:

var faceDir = "images/"; //配置表情目錄
var iframeDocument = null;
var iframeWindow = null;
var isIe = false;
$.each($("#faceList>li"), function(){ //展現表情
var node = document.createElement("img");
node.className = $(this).attr("class");
node.src = faceDir+$(this).html();
this.innerHTML = "";
this.appendChild(node);
});

放一個 iframe 用來做編輯器
復制代碼 代碼如下:

<iframe id="Edit" frameborder="0"></iframe>

先得到 ifame
復制代碼 代碼如下:

iframeWindow = document.getElementById("Edit").contentWindow;iframeDocument = document.getElementById("Edit").contentWindow.document; iframeDocument.designMode="On"; //打開iframe 編輯模式


.designMode="On"; 這個方法還是蠻常見的。 剛開始做的時候還想用 textarea 但是textarea不能顯示圖片。這里在實際過程中發現與 textarea 的一個差異,iframe 內不會自己換行,所以為iframe 添加了一個body設置了一個word-wrap屬性
復制代碼 代碼如下:

iframeDocument.write("<html><body style=/"word-wrap:break-word;text-align: left; background-color: #fff; border:1px solid #CCC; margin:0px; padding:0px;overflow:hidden;/"></body></html>");

下面實現,在iframe 插入圖片表情的過程(代碼內有注釋)
復制代碼 代碼如下:

$("#faceList>li").click(function(){
var $this = $(this);
var $thisImg = $(this).find("img:eq(0)"); //當前點擊的表情(IMG標記)
document.getElementById("Edit").contentWindow.focus(); //使編輯區域得到焦點
var r = null;
if(document.selection) //處理兼容性問題
{
//把表情放入iframe
r = iframeDocument.selection.createRange();
iframeDocument.selection.empty();
r.pasteHTML($thisImg[0].parentNode.innerHTML.toString());
}
else if(window.getSelection)
{
r = iframeWindow.getSelection().getRangeAt(0);
iframeWindow.getSelection().removeAllRanges();
var node = document.createElement("img");
node.className = $thisImg.attr("class");
node.src = $thisImg.attr("src");
r.surroundContents(node);
}
});

到這里,就完成了插入表情的過程。還有最后一件事情:翻譯img 標記
復制代碼 代碼如下:

function GeteEditData()
{
var edit = iframeDocument.getElementsByTagName("body")[0].innerHTML;
//在內存中Copy一個該節點副本,以保全文檔流格式
var str = new String(edit);
var $content = $("<div>"+str+"</div>");
var imgNode = $("#faceList img");
$.each(imgNode, function(){
var mark= "/:"+$(this).attr("class").toString();
var fs = $content.find("."+$(this).attr("class").toString());
if(fs!=null&&fs[0]!=undefined)
{
fs.replaceWith(mark);
}
});
}

其實還有很多問題沒有處理,俺也只是一知半解。把代碼貼出來希望能幫助一些朋友解決問題。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产一国产一级毛片视频 | 免费毛片电影 | 国产人成精品一区二区三 | 久久久www视频 | 在线播放亚洲精品 | 欧美亚洲国产一区二区三区 | 亚洲成人涩涩 | 久久精品女人天堂av | 噜噜在线视频 | 欧产日产国产精品乱噜噜 | 日产精品久久久一区二区福利 | 黄色7777| 午夜视频久久 | 亚洲一二区视频 | 国产精品久久久久影院老司 | 欧美福利视频一区二区三区 | 极品大长腿啪啪高潮露脸 | 激情亚洲一区二区三区 | 亚洲va久久久噜噜噜久牛牛影视 | 亚洲国产视频在线 | 成人一级黄色大片 | 奶子吧naiziba.cc免费午夜片在线观看 | 91网址在线观看 | 成人男女啪啪免费观看网站四虎 | 日本aaaa片毛片免费观看视频 | 亚洲精品动漫在线观看 | 亚洲天堂ww| 国产成人自拍视频在线 | 国产一区二区三区精品在线观看 | 少妇的肉体的满足毛片 | 欧美成年私人网站 | 免费h片 | 92看片淫黄大片一级 | 懂色粉嫩av久婷啪 | 久久久久久久一区二区三区 | 欧美黄色一级片视频 | 98国内自拍在线视频 | 午夜精品福利影院 | 91精品国产综合久久婷婷香蕉 | 欧美性生活久久 | 国产91一区 |