var weblexurl = "http://www.weblex.fr"; $(function() { // due to browser security restrictions, we have to pass through a third-party proxy to manage cross domain request. // see http://stackoverflow.com/questions/15005500/loading-cross-domain-html-page-with-ajax $.ajaxPrefilter( function (options) { if (options.crossDomain && jQuery.support.cors) { var http = (window.location.protocol === 'http:' ? 'http:' : 'https:'); options.url = (http + "//cors-anywhere.herokuapp.com/" + options.url); } }); var parser = new DOMParser(); // by default, support.cors is false for IE. Force it to true $.support.cors = true; $.ajax({ // need a X-Requested-With for IE: http://stackoverflow.com/questions/8163703/cross-domain-ajax-doesnt-send-x-requested-with-header headers: {'X-Requested-With': 'XMLHttpRequest'}, url: weblexurl, type: 'GET', error: function(e) { console.log("error: ", e.responseText); }, success: function (response) { // recuperation du contenu de la page d'accueil weblex var dom = parser.parseFromString(response,"text/html"); // dans la classe "stories", le href de la premiere balise avec un title est recupere var storyurl = weblexurl + $(".stories ul.list-with-dates a[title]:first", dom).attr("href"); $.ajax({ // need a X-Requested-With for IE: http://stackoverflow.com/questions/8163703/cross-domain-ajax-doesnt-send-x-requested-with-header headers: {'X-Requested-With': 'XMLHttpRequest'}, url: storyurl, type: 'GET', error: function(e) { console.log("error: ", e.responseText); }, success: function (response) { // recuperation du contenu de la page "la-petite-histoire-du-jour" var dom = parser.parseFromString(response,"text/html"); // dans la div d'identifiant "page-actus-liste", la 1ere balise contenant la class "title" est recuperee var titreArticle = $("#page-actus-liste h2.title:first", dom).text(); // affichage du titre dans la balise "TitreHistoire" $("#TitreHistoire").append(titreArticle); // Ajout d'un lien vers l'histoire complete $("#PlusPetiteHistoire").on("click", function() { window.open(storyurl); }) .css("cursor", "pointer"); // dans la classe "layout-content", les 1eres balises "p" sont le contenu de la petite histoire du jour // on ne recupere ici que le 1er paragraphe var contenuArticle = $(".layout-content p:first", dom).text(); // affichage du contenu dans la balise "ContenuHistoire" $("#ContenuHistoire").append(contenuArticle); } }); } }); });