developpers:webextension_xtense
Table des matières
Documentation Développeur Xtense Grease Monkey
Compatibilité Chrome/Firefox : ce qui est nécessaire :-)
Détection du navigateur
// Navigateurs var isFirefox = (window.navigator.userAgent.indexOf('Firefox') > -1) ? true : false; var isChrome = (window.navigator.userAgent.indexOf('Chrome') > -1) ? true : false; var isTamper = false; if(isChrome && unsafeWindow){ isTamper = true; // Plugin TamperMonkey installé sur Chrome }
Fonctions de sauvegarde des données
/*********************** Compatibilité Chrome ***************************/ if(isChrome){ function GM_getValue(key,defaultVal) { var retValue = localStorage.getItem(key); if ( !retValue ) { return defaultVal; } return retValue; } function GM_setValue(key,value) { localStorage.setItem(key, value); } function GM_deleteValue(value) { localStorage.removeItem(value); } }else if(isFirefox){ // A completer si besoin... }
Fonctions de Log
function log(message){ if(GM_getValue(prefix_GMData +'debug.mode','false').toString() == 'true') { console.log(nomScript + " says : " + message); } }
Requête AJAX et sa CallBack
function Xajax(obj) { GM_xmlhttpRequest({ method: "POST", url: obj.url || '', data: obj.post || '', headers: { "Content-Type": "application/x-www-form-urlencoded" }, onload: function(response) { handleResponse(response); } }); }
Callback
function handleResponse(Response) { log(Response.responseText); // Pour le debug... var message_start = '"'+GM_getValue(prefix_GMData +'server.name','')+'" : '; if (Response.status != 200) { if (Response.status == 404) log(Xl('http_status_404')); else if (Response.status == 403) log(Xl('http_status_403')); else if (Response.status == 500) log(Xl('http_status_500')); else if (Response.status == 0) log(Xl('http_timeout')); else log(Xl('http_status_unknow', Response.status)); } else { //Traitement du contenu }
developpers/webextension_xtense.txt · Dernière modification : 2022/11/30 15:48 de 127.0.0.1