MooTools - Manipulações DOM

Já sabemos que toda página HTML é projetada usando elementos DOM. Usando MooTools você pode manipular elementos DOM, o que significa que você pode criar, remover e alterar o estilo dos elementos DOM.

Métodos básicos

A seguir estão os métodos básicos que capturam e ajudam a modificar as propriedades dos elementos DOM.

pegue()

Este método é usado para recuperar as propriedades do elemento, como src, valor, nome, etc. A instrução a seguir é a sintaxe do método get.

Sintaxe

//this will return the html tag (div, a, span...) of the element 
$('id_name').get('tag');

Você receberá a seguinte lista de propriedades enquanto recupera o elemento usando o método get ().

  • id
  • name
  • value
  • href
  • src
  • classe (retornará todas as classes se o elemento)
  • texto (o conteúdo de texto de um elemento)

conjunto()

Este método é usado para definir um valor para uma variável. Isso é útil quando combinado com eventos e permite alterar os valores. A instrução a seguir é a sintaxe do método set.

Syntax

//this will set the href of #id_name to "http://www.google.com"
$('id_name').set('href', 'http://www.google.com');

apagar()

Este método ajuda a apagar o valor de uma propriedade de elementos. Você precisa escolher qual propriedade deseja apagar do elemento. A instrução a seguir é a sintaxe do método erase ().

Syntax

//this will erase the href value of #id_name
$('id_name').erase('href');

Elementos Móveis

Mover elemento significa mover um elemento existente de uma posição para outra posição na página. Você pode usar o método inject () para mover um elemento pela página. Vejamos um exemplo em que uma página HTML contém três elementos div que contêm o conteúdo A, B e C respectivamente em um pedido. Dê uma olhada no código a seguir.

Exemplo

<!DOCTYPE html>
<html>

   <head>
      <script type = "text/javascript" src = "MooTools-Core-1.6.0.js"></script>
      <script type = "text/javascript" src = "MooTools-More-1.6.0.js"></script>
      
      <script type = "text/javascript">
         window.addEvent('domready', function() {
            var elementA = $('elemA');
            var elementB = $('elemB');
            var elementC = $('elemC');
         })
      </script>
   </head>
   
   <body>
      <div id = "body_wrap">
         <div id = "elemA">A</div>
         <div id = "elemB">B</div>
         <div id = "elemC">C</div>
      </div>
   </body>
   
</html>

Você receberá a seguinte saída -

Resultado

Agora, usando o método inject () na MooTools, podemos mudar a ordem de ABC para ACB. Isso significa que precisamos colocar o elemento B após o elemento C e colocar o elemento C antes do elemento B. Dê uma olhada no código a seguir.

Exemplo

<!DOCTYPE html>
<html>

   <head>
      <script type = "text/javascript" src = "MooTools-Core-1.6.0.js"></script>
      <script type = "text/javascript" src = "MooTools-More-1.6.0.js"></script>
      
      <script type = "text/javascript">
         window.addEvent('domready', function() {
            var elementA = $('elemA');
            var elementB = $('elemB');
            var elementC = $('elemC');
            
            //translates to: inject element C before element B
            elementC.inject(elementB, 'before');
            
            //translates to: inject element B after element C
            elementB.inject(elementC, 'after');
         });
      </script>
   </head>
   
   <body>
      <div id = "body_wrap">
         <div id = "elemA">A</div>
         <div id = "elemB">B</div>
         <div id = "elemC">C</div>
      </div>
   </body>
   
</html>

Você receberá a seguinte saída -

Resultado

Criar Novo Elemento

MooTools oferece uma opção para criar qualquer tipo de elemento DOM e inseri-lo na página HTML. Mas, temos que manter uma sintaxe adequada para cada elemento. Vamos dar um exemplo em que, o fragmento de código a seguir é a sintaxe para criar um elemento (âncora).

Sintaxe

var el = new Element('a', {
   id: 'Awesome',
   title: 'Really?',
   text: 'I\'m awesome',
   href: 'http://MooTools.net',
   
   events: {
      'click': function(e) {
         e.preventDefault();
         alert('Yes, really.');
      }
   },
   styles: {
      color: '#f00'
   }
});

Vamos dar um exemplo que criará um elemento âncora usando a biblioteca MooTools. Dê uma olhada no código a seguir.

Exemplo

<!DOCTYPE html>
<html>

   <head>
      <script type = "text/javascript" src = "MooTools-Core-1.6.0.js"></script>
      <script type = "text/javascript" src = "MooTools-More-1.6.0.js"></script>
      
      <script type = "text/javascript">
         window.addEvent('domready', function() {
            
            var el = new Element('a', {
               id: 'Awesome',
               title: 'Really?',
               text: 'I\'m awesome',
               href: 'http://www.tutorialspoint.com',
               
               events: {
                  'click': function(e) {
                     e.preventDefault();
                     alert('Yes, really.');
                  }
               },
               styles: {
                  color: '#f00'
               }
            });
            el.inject(document.body);
         });
      </script>
   </head>
   
   <body>
   </body>
   
</html>

Você receberá a seguinte saída -

Resultado