2010-05-07 15 views
5

In jQuery si può fare:Usa jQuery su una variabile invece sul DOM?

$("a[href$='.img']").each(function(index) { 
    alert($(this).attr('href')); 
} 

Voglio scrivere una funzione jQuery che esegue la scansione x-livelli da un sito web e raccoglie tutte le HREF alle immagini gif.

Così, quando uso la funzione ottenere per recuperare un'altra pagina,

$.get(href, function(data) { 

}); 

Voglio essere in grado di fare qualcosa di simile

data.$("a[href$='.img']").each(function(index) { 
}); 

è possibile?

... UPDATE ...

Grazie alle risposte, sono stato in grado di risolvere questo problema.

function FetchPage(href) { 
    $.ajax({ 
     url: href, 
     async: false, 
     cache: false, 
     success: function(html){ 
      $("#__tmp__").append("<page><name>" + href + "</name><content>" + html + "</content></page>"); 
     } 
    }); 
} 

Vedi this zip fil e per un esempio di come usarlo.

risposta

4

si potrebbe mettere i dati mi hanno assegnato nel DOM e quindi eseguire

$("a[href$='.img']").each(function(index) { 
    alert($(this).attr('href')); 
} 

qualcosa di simile

$.get(href, function(data) { 
    $("#somelement").hide(); 
    $("#somelement").html(data); 
    $("#somelement").find("a[href$='.img']").each(function(index) { 
    alert($(this).attr('href')); 
    } 
    $("#somelement").show(); 
} 
1

Penso che sia meglio fare la striscia sul lato client (ad esempio PHP), invece, e restituire l'immagine hrefs a javascript/jquery.

Oh, e dati. $ ("A [href $ = '. Img']") non è possibile. jQuery() funziona cercando nel DOM attualmente esistente.

Problemi correlati