J'utilise les api ajax de Google pour lancer des recherches. Afin de pouvoir établir des statistiques sur les clics sortants à partir de la recherche, j'aimerais mettre en place un événement onclick sur les liens fournis par Google.
Pour l'instant, je suis arrivé à ça :
Code : Tout sélectionner
<div id="cse" style="width:100%;"">Chargement</div>
<style>
.gs-result { display : none; }
</style>
<script src="http://www.google.com/jsapi" type="text/javascript"></script>
<script type="text/javascript">
google.load('search', '1');
function onload () {
var searchControl = new google.search.SearchControl();
var webSearch = new google.search.WebSearch();
searchControl.addSearcher(webSearch);
searchControl.setLinkTarget(google.search.Search.LINK_TARGET_BLANK);
searchControl.setResultSetSize(google.search.Search.LARGE_RESULTSET);
searchControl.setSearchCompleteCallback (this, MySearch),
searchControl.draw(document.getElementById("cse"));
}
function MySearch (sc, searcher) {
var results = searcher.results;
var showresults = document.getElementById('showresults');
for (var i = 0; i < results.length; i++) {
var result = results[i];
var ltitle = result.title;
var lurl = result.url;
var lcontent = result.content;
var visibleURL = result.visibleURL;
showresults.innerHTML += '<a onclick="alert(\'test\');" href="'+lurl+'">'+ltitle+'</a><br />'+ lcontent + '<br /><br />';
}
}
google.setOnLoadCallback(onload, true);
</script>
Mes résultats en dessous
<hr />
<div id="showresults"></div>J'arrive, avec les quelques élements fournis par la doc des API Google, à masquer les résultats de recherche (display: none en tête de fichier - désactivez-le pour voir la différence). Mais je n'arrive pas à trouver la doc qui donne le id permettant de masquer le bouton "Web" et les 3 icônes à droite qui apparaissent au-dessus des résultats.
Est-ce que quelqu'un connaît la class du div qui affiche ce bouton ? Ou alors est-ce que quelqu'un sait comment faire pour que le résultat de la requête ne soit pas affiché (dans ce cas, il n'y a pas besoin de masquer). Ou encore, est-ce que quelqu'un sait comment on affiche le source envoyé via AJAX au navigateur (dans ce cas, je pourrais aller voir le class) ?
Je n'ai rien vu dans la doc http://code.google.com/apis/ajaxsearch/ ... GwebResult
Merci de votre réponse