首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >撤消div标签

撤消div标签
EN

Stack Overflow用户
提问于 2015-08-19 23:39:47
回答 1查看 173关注 0票数 2

我有contentEditable = 'true'div标签。当我从键盘输入文本,然后调用undo函数(document.execCommand('undo',false, null))时,我输入的所有文本都会被删除。我只想撤消输入的最后一个字符。我该怎么做呢?

代码语言:javascript
复制
function doUNDO() 
{
    document.execCommand('undo',false, null);
}
代码语言:javascript
复制
<!DOCTYPE html>
<html>
    <head>
        <script src="formulas.js"></script>
        <link rel="stylesheet" href="styles.css" type="text/css" media="screen" />
    </head>
    <body id="main" spellcheck="false"> 
        <span contenteditable="false">
            <button onclick="doUNDO()">UNDO</button>
        </span> 

        <div id = "mainDiv"contenteditable="true">a</div>  
    </body>
</html>

EN

回答 1

Stack Overflow用户

发布于 2015-08-19 23:47:02

doUndo()中,不需要调用execCommand,只要最后一个字符不为空,就可以将其删除。

例如。

代码语言:javascript
复制
function doUNDO() {
    var mainDIV = document.getElementById('mainDiv') 
    mainDIV.innerHTML = mainDIV.innerHTML.substr(0, mainDIV.innerHTML.length - 1);

}

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32100027

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档