js 将复制面板的粘贴内容,样式标签去除(相似web微信输入框div)

由于最近在作一个输入框支持表情文字因此输入框只能使用div了可是复制回来的内容会带样式html标签这显然很不合理,详细以下:css

以复制Bootstrap内容为实例,复制内容以下:html


粘贴处理后以下图所示:spa


彻底的将复制来的css样式,Html标签去除而且会把内容处理成有规律的格式以下图:htm


若是感受上面的叙述彻底符合您的标准那么就废话很少说直接上代码吧!blog

<div class='page3-emjoy5'></div>ip

$(".page3-emjoy5").on("paste", function (e) {
    textInit(e)
});

function textInit(e) {
    e.preventDefault();
    var text;
    var clp = (e.originalEvent || e).clipboardData;
    if (clp === undefined || clp === null) {
        text = window.clipboardData.getData("text") || "";
        if (text !== "") {
            if (window.getSelection) {
                var newNode = document.createElement("span");
                newNode.innerHTML = text;
                window.getSelection().getRangeAt(0).insertNode(newNode);
            } else {
                document.selection.createRange().pasteHTML(text);
            }
        }
    } else {
        text = clp.getData('text/plain') || "";
        if (text !== "") {
            document.execCommand('insertText', false, text);
        }
    }
}