Utilisateur:Dr Brains/ReferencesPopUp.js
Note : après avoir enregistré la page, vous devrez forcer le rechargement complet du cache de votre navigateur pour voir les changements.
Mozilla / Firefox / Konqueror / Safari : maintenez la touche Majuscule (Shift) en cliquant sur le bouton Actualiser (Reload) ou pressez Maj-Ctrl-R (Cmd-R sur Apple Mac) ;
Firefox (sur GNU/Linux) / Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5./**
* ReferencesPopup
*
* Affiche les références des articles dans des popup (attribut "title").
*
* {{Projet:JavaScript/Script}}
*/
var ReferencesPopUp_ThingsToDelete = new Array();
ReferencesPopUp_ThingsToDelete.push('[archive]');
ReferencesPopUp_ThingsToDelete.push('[détail des éditions]');
ReferencesPopUp_ThingsToDelete.push('texte intégral');
ReferencesPopUp_ThingsToDelete.push('lire en ligne');
function ReferencesPopUp_getReferenceText(id){
if(!id) return false;
var ReferenceLi = document.getElementById(id);
if(ReferenceLi==null) return false;
var RetourLi = ReferenceLi.getElementsByTagName('span')[0];
if(!RetourLi) return false;
var Texte = ReferenceLi.textContent;
var Retour = RetourLi.textContent;
var TexteReference = Texte.split(Retour).join('');
for(var a=0,l=ReferencesPopUp_ThingsToDelete.length;a<l;a++){
TexteReference = TexteReference.split(ReferencesPopUp_ThingsToDelete[a]).join('');
}
return TexteReference;
}
function ReferencesPopUp_modifyReferenceTitle(){
var Sups = document.getElementsByTagName('sup');
for(a=0;a<Sups.length;a++){
if(Sups[a].className == 'reference'){
var Reference = Sups[a];
var LienCite = Reference.getElementsByTagName('a')[0];
if(LienCite){
var Href = LienCite.href;
var LienReference = Href.substring(0, Href.indexOf('#'))
var IdReference = Href.split(LienReference+'#').join('');
var ExtractReference = ReferencesPopUp_getReferenceText(IdReference);
if(ExtractReference){
LienCite.title = ExtractReference;
}
}
}
}
}
addOnloadHook(ReferencesPopUp_modifyReferenceTitle);