jQuery :random filter
Postado por: Pedro Rogério emVocê já pensou na possibilidade de obter itens randômicos com jQuery? Já tentou fazer isso e não conseguiu? Eu encontrei no site de Waldek Mastykarz uma maneira muito simples de se fazer isso. Não vou explicar aqui o código pois o autor já fez isso, mas aqui vai a solução:
jQuery.jQueryRandom = 0;
jQuery.extend(jQuery.expr[":"],
{
random: function(a, i, m, r) {
if (i == 0) {
jQuery.jQueryRandom = Math.floor(Math.random() * r.length);
};
return i == jQuery.jQueryRandom;
}
});
Um exemplo de utilização do filtro :random que agora foi criado seria da seguinte forma:
<ul>
<li>Primeiro</li>
<li>Segundo</li>
<li>Terceiro</li>
</ul>
<script type="text/javascript">
$(document).ready(function() {
alert($("li:random").text());
});
</script>
Simples, vejam esse exemplo para um melhor entendimento. A cada refresh na página, ele me traz um item diferente.













Bem legal…. adorei
Muito interessante,
porém se eu não estou enganado, nunca vai cair no primeiro item, neh?
Fuiii
@Ramon,
Sim, é só testar o exemplo que você verá isso acontecer. Abraços.
Cai no primeiro sim senhor! Só não cai quando se usa math.random