首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaScript&JQuery:如何检查是否可以撤消或重做?

JavaScript&JQuery:如何检查是否可以撤消或重做?
EN

Stack Overflow用户
提问于 2021-02-18 12:11:20
回答 1查看 263关注 0票数 1

所以我有一个<div contenteditable>。我为undoredo实现了按钮

代码语言:javascript
复制
<button onclick="undo(event)">
<button onclick="redo(event)">

function undo(event) {
    event.preventDefault();
    document.execCommand('undo', false, null);
}

function redo(event) {
    event.preventDefault();
    document.execCommand('redo', false, null);
}

根据输入历史记录,我需要为undoredo设置禁用按钮。如何检查是否可用撤消或重做?

EN

回答 1

Stack Overflow用户

发布于 2022-02-04 11:37:06

您可以将其用于撤消或重做状态。

代码语言:javascript
复制
function check(){
if(document.queryCommandEnabled("undo"))
  {
    $('#undoResult').text("Undo is active");
    }else{
      $('#undoResult').text("Undo is not active");
  }
if(document.queryCommandEnabled("redo"))
  {
    $('#redoResult').text("Redo is active");
    }else{
      $('#redoResult').text("Redo is not active");
  }
  }
  $(document).on('keypress',function(e) {
      if(e.which == 13) {
        document.execCommand("insertLineBreak");
              return false;
      }
      });
  check();
代码语言:javascript
复制
div{
  border:1px solid black;
  height:100px;
}

button{
color:white;
background:black;
height:40px;
width:49%;
padding:1px;
text-align:center;
margin-top:10px;
}

p{
font-size:30px;
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div contenteditable="true">
</div>

<button onclick="document.execCommand('undo',false,null);check()" >Undo</button>

<button onclick="document.execCommand('redo',false,null); check()" >Redo</button>

<p id='undoResult'></p>
<p id='redoResult'></p>

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

https://stackoverflow.com/questions/66259701

复制
相关文章

相似问题

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