JavaScript Undo-Redo(根据《在javascript中用command 模式实现undo和redo》修改兼容Firefox)

这篇博客介绍了如何在JavaScript中利用Command模式实现撤销(Undo)和重做(Redo)功能,特别针对Firefox浏览器进行了兼容性处理。通过创建BaseAction基类和具体的操作类如MoveAction、ChangeAction,实现了元素位置移动和值更改的可逆操作。全局函数undo()和redo()用于触发撤销和重做,同时,拖放和输入事件触发了对应操作的记录。
摘要由CSDN通过智能技术生成

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> test command </TITLE>
<META NAME="Author" CONTENT="emu">

<SCRIPT LANGUAGE="JavaScript">
<!--
var actionStack = [];//操作栈
var actionIndex = 0;//操作栈中当前操作的指针

//-----------------------  command对象基类 ------------------------------
function BaseAction(){
}
BaseAction.prototype.exec=function(){
        actionStack[actionIndex++] = this;
        actionStack.length = actionIndex;
}
BaseAction.prototype.undo=function(){
        alert("此操作未定义相应的undo操作");
}
BaseAction.prototype.redo=function(){
        alert("此操作未定义相应的redo操作");
}

//-----------------------  move操作的command对象 ------------------------------
function

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值