Site Overlay

Objeto UNDO

O agente de usuário deve armazenar um histórico de alterações para cada documento carregado. Esse histórico é controlado pelo objeto UndoManager, acessível através de window.undoManager. O histórico guarda dois tipos de alterações:

  • Alterações DOM: O próprio histórico de alterações do navegador, as alterações DOM são inseridas automaticamente no histórico quando o usuário usa um campo de edição.
  • Objetos undo: Os objetos undo são inseridos no histórico e controlados pelos seus scripts. Por exemplo, uma aplicação de e-mail pode guardar um objeto undo representando o fato de que o usuário moveu um e-mail de uma pasta para outra. 

O objeto UndoManager possui ainda os seguintes métodos e propriedades:

  • Length: o número de entradas no histórico;
  • Position: o número da entrada atual no histórico;
  • add(data,title): adiciona uma entrada específica no histórico;
  • Data: pode ser um objeto literal com dados arbitrários;
  • Title: é como essa entrada vai aparecer descrita na lista do histórico remove(index) remove uma entrada específica do histórico;
  • clearUndo(): remove todas as entradas antes da atual no histórico;
  • clearRedo(): remove todas as entradas após a atual no histórico.

Além disso, os itens no histórico podem ser acessados com window.undoManager[index].

Por fim, cada vez que o usuário disparar uma ação de undo ou redo, e o item do histórico for um objeto undo, será disparado o evento correspondente, window.onundo ou window.onredo. As funções associadas a estes eventos receberão como parâmetro um objeto event, contendo uma propriedade data, cujo valor é o objeto undo que você inseriu no histórico.

window.onundo=function(e){  alert(‘Refazer a alteração: ‘+e.data) ; }

10

Source: scriptcase / Objeto UNDO

Comments

comments

Leave a Reply

Your email address will not be published.