codice:
function parseXML(xml) {
$(xml).find('item').sort(
function(a,b){
var catA = $(a).find('category').text();
var catB = $(b).find('category').text();
return catA.toUpperCase().localeCompare(catB.toUpperCase());
}
).each(function (index) {
var miadata = new Date($(this).find('pubDate').text());
var day = miadata.getDate();
var mese = miadata.getMonth() + 1;
var year = miadata.getFullYear();
var titolo = $.trim($(this).find('title').text());
var link = ($(this).find('link').text());
var articolo =$($(this).find('description').text());
var immagine = articolo.find('img').eq(0).attr('src');
var desc = articolo.text().substr(0, 200);
var tagImg = immagine ? "<img src='"+immagine+"' class='imgBlog' />" : "";
var link_markup = '<div class="dataBlog"> Articolo pubblicato in data: ' + day + '/' + mese + '/' + year + ' </div><div class="titoloBlog">' + titolo + '</div><div class="descBlog">' + tagImg + desc + '...</div><div class="leggiTutto"><a class="imCssLink" href="' + link + '">Leggi tutto</a></div><div class="divisorio"></div>';
$(link_markup).appendTo('#newsBlogcategorygenuini' );
if (index == (nNews - 1)) return false;
});
};
sostanzialmente find("item") torna un array di elementi item, con sort( a,b ) vengono ordinati per categoria, e con each (item) vengono stampati. Se invece vuoi tutte le entry di una specifica categoria, puoi fare:
codice:
var categoria_da_visualizzare= 'videonews';
function parseXML(xml) {
$(xml).find('item > category:contains('+categoria_da_visualizzare+')').parent().each(function (index) {
var miadata = new Date($(this).find('pubDate').text());
var day = miadata.getDate();
var mese = miadata.getMonth() + 1;
var year = miadata.getFullYear();
var titolo = $.trim($(this).find('title').text());
var link = ($(this).find('link').text());
var articolo =$($(this).find('description').text());
var immagine = articolo.find('img').eq(0).attr('src');
var desc = articolo.text().substr(0, 200);
var tagImg = immagine ? "<img src='"+immagine+"' class='imgBlog' />" : "";
var link_markup = '<div class="dataBlog"> Articolo pubblicato in data: ' + day + '/' + mese + '/' + year + ' </div><div class="titoloBlog">' + titolo + '</div><div class="descBlog">' + tagImg + desc + '...</div><div class="leggiTutto"><a class="imCssLink" href="' + link + '">Leggi tutto</a></div><div class="divisorio"></div>';
$(link_markup).appendTo('#newsBlogcategorygenuini' );
if (index == (nNews - 1)) return false;
});
};
PS: cmq il linguaggio è "javascript" non "java", sono due cose diverse