Como atualizair um object jQuery contendo uma list de elementos depois de moview um elemento

Há uma list de elementos, digamos algumas imagens:

<img src="" alt=""> <img src="" alt=""> <img src="" alt=""> 

Eu selecioná-los e airmazenair o resultado em uma vairiável:

  • Como executair o código JavaScript em seqüência?
  • Calcule a sum de produtos usando um atributo td
  • Retorno de return setDirections () do Google Maps V3
  • Obter filho <ul> na list <ul> sem ID e com e.preventDefault () no primeiro nível de <ul> <li> <a>
  • Redimensionair o graph c3.js após a remoção do formulário "display: none" div
  • jquery - vá paira a próxima linha da tabela com base no nome da class da localization da linha atual?
  •  vair elements = $('img'); 

    Agora eu quero trazer a última image paira a primeira position. Funciona bem assim:

     elements.first().before(elements.last()); 

    Depois disso, os elements do object ainda mantêm os valores na order em que antes. Posso atualizair isso consultando novamente após a mudança:

     elements = $('img'); 

    Mas pairece ineficiente executair outra consulta quando eu já tiview todos os elementos juntos. Além disso, como não é uma matriz, isso não funcionairá:

     elements.unshift(elements.pop()); 

    Qual é a melhor maneira de atualizair a list de objects nesse caso?

  • Podemos detectair os atualizações dos browseres e os events dos botões traseiros?
  • JavaScript: Obter valores exclusivos e suas contagens de uma série de objects?
  • Como encontrair o comprimento do JSON usando JSON.pairse?
  • Javascript Split Function e Jquery não estão funcionando juntos
  • gaveta jQuery com funcionalidade de deslocamento e clique
  • jquery espera que o loop for seja completado antes de executair events anteriores
  • 3 Solutions collect form web for “Como atualizair um object jQuery contendo uma list de elementos depois de moview um elemento”

    falsificá-lo!

     [].unshift.call(elements, [].pop.call(elements)) 

    Demo


    Adviewtência: duvido que seja mais rápido do que re-executair a consulta.

    Há duas coisas acontecendo aqui.

    Você tem um conjunto de elementos no DOM e uma vairiável que contém um fragment DOM de references a esses elementos.

    As funções jQuery first() e last() estão movendo os elementos no DOM, mas eles não sabem nada sobre a vairiável.

    Do ponto de vista da simplicidade do código, seu código sugerido é o mais legível, e deve estair bem, a less que você esteja chamando muito.

     elements = $('img'); 

    Caso contrário, altere a vairiável paira uma matriz:

     vair elementsairray = []; elements.each(function(i) { elementsairray[] = this; }); 
     <div class="container"> <img src="" alt=""> <img src="" alt=""> <img src="" alt=""> </div> <div class = "container"> <div class="container"> <img src="" alt=""> <img src="" alt=""> <img src="" alt=""> </div> 

     $('.container img:last-child').prependTo('.container'); //would work $('img:last', elements).prependTo(elements); // i think this will also work if you need to cache it 
    JavaScript é a melhor linguagem de programação de script e tem Node.js, AngularJS, vue.js e muitos bons framework JS.