Método jQuery - map (callback)
Descrição
o map( callback ) O método traduz um conjunto de elementos no objeto jQuery em outro conjunto de valores em um array jQuery que pode ou não conter elementos.
Você pode usar esse método para criar listas de valores, atributos, valores css - ou até mesmo realizar transformações de seletor especiais e personalizadas.
Sintaxe
Aqui está a sintaxe simples para usar este método -
selector.map( callback )
Parâmetros
Aqui está a descrição de todos os parâmetros usados por este método -
callback - A função a ser executada em cada elemento do conjunto.
Exemplo
A seguir está um exemplo simples mostrando o uso desse método -
<html>
<head>
<title>The jQuery Example</title>
<script type = "text/javascript"
src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js">
</script>
<script type = "text/javascript" language = "javascript">
$(document).ready(function(){
var mappedItems = $("li").map(function (index) {
var replacement = $("<li>").text($(this).text()).get(0);
if (index == 0) {
// make the first item all caps
$(replacement).text($(replacement).text().toUpperCase());
} else if (index == 1 || index == 3) {
// delete the second and fourth items
replacement = null;
} else if (index == 2) {
// make two of the third item and add some text
replacement = [replacement,$("<li>").get(0)];
$(replacement[0]).append("<b> - A</b>");
$(replacement[1]).append("Extra <b> - B</b>");
}
// replacement will be an dom element, null,
// or an array of dom elements
return replacement;
});
$("#results").append(mappedItems);
});
</script>
<style>
body { font-size:16px; }
ul { float:left; margin:0 30px; color:blue; }
#results { color:red; }
</style>
</head>
<body>
<ul>
<li>First</li>
<li>Second</li>
<li>Third</li>
<li>Fourth</li>
<li>Fifth</li>
</ul>
<ul id = "results">
</ul>
</body>
</html>
Isso produzirá o seguinte resultado -
jquery-traversing.htm