可能大家都听说过或者使用过javascript中的命令模式,它其中一个应用就是封装其他的对象或者类,并带有execute或者run、undo或者redo等等方法来执行代码,并且提供了回退操作,把每一步的操作记录在队列里,之后可以一步一步来回退操作。这个应用在很多方面都可能涉及到的,尤其是一些ajax应用方面。 下面我将要介绍的后退操作实现方式中,并没有使用命令模式,而是提供了几种实现的思路,其他形式的封装都是允许而且可行的。 第一种:使用计步器step。这种方式的实现方式是通过一个正向的计步器,当你正向操作了多少次,计步器都会自动增加步数,之后在回退的倒退一步一步回退回来。比如下面的这种情况: [javascript] //上面的实现方式的适用范围很小,在现实的需求中也比较少这样的功能 var Move = { step: 0, //计步器 run: function(elem){ //每正向执行一次,计步器就加1 this.step++; elem.style.left = (parseInt(elem.style.left) + … 了解更多