Element Removal | per rimuovere uno o più elementi in una pagina
questo bookmarklet mi è stato richiesto da un utente, che, come me è stufo di tutte quelle finestre che ti evitano di visitare una determinata pagina impedendo ogni azione.
Element Removal, come funziona ? molto semplice, prima di tutto trascina la gomma da cancellare qui a sinistra nella barra dei preferiti, lo esegui e nel titolo della pagina potrai visualizzare l’elemento in esame, con un click lo elimini, se riesegui il bookmarklet esci dalla modalità removal.
Testato su Chrome; FireFox; Internet Explorer; Opera, tradotto in Italiano; Inglese e Francese, se volete altre lingue a disposizione basta chiedere, il codice che segue è stato minimizzato con SublimeText 2 plugin YUI Compressor, questo il codice :
[spoiler title=”Visualizza il codice sorgente” open=”0″ style=”1″]
/*
Element Removal :
Author = Leonardo Ciaccio
Version = 1.0.1
Lang = IT; EN; FR; EN default
Remove an element just one click
*/
(function(W,D,B){
/*Signature per interrompere la cancellazione*/
if(typeof W.ML_SIGN_REMOVER == undefined){
W.ML_SIGN_REMOVER=true;
}else{
W.ML_SIGN_REMOVER=!W.ML_SIGN_REMOVER;
}
function _GetLang(){
return navigator.language || navigator.userLanguage;
}
//Traduzioni dei messaggi
var MEX=[
{//Italiano = 0
lang : /(it|it-IT)/gi,
m00 : "Nel titolo della pagina puoi visualizzare l'elemento da eliminare, puoi clickare sull'elemento per eliminarlo, per disabilitare questo bookmarklet, rieseguilo !",
m01 : "Element Removal disabilitato !",
m02 : "Non ci sono elementi da eliminare, strano !",
m03 : "Errore imprevisto, contatta [email protected] !"
},
{//Inglese = 1
lang : /(en|en-EN|en-US|en-AU|en-NZ|en-ZA|en-GB)/gi,
m00 : "In the title of the page you can find the item to delete, you can click the item to delete, to disable this bookmarklet, restart this bookmarklet !",
m01 : "Element Removal disabled !",
m02 : "No items to delete, strange !",
m03 : "Unexpected error, please contact [email protected] !"
},
{//Francese = 2
lang : /(fr|fr-FR|fr-BE|fr-CH)/gi,
m00 : "Dans le titre de la page que vous pouvez trouver l'élément à supprimer, vous pouvez cliquer sur l'élément à supprimer, désactiver ce bookmarklet, redémarrez ce bookmarklet !",
m01 : "Element Removal désactivé !",
m02 : "Aucun élément à supprimer, c'est étrange !",
m03 : "Une erreur inattendue, veuillez contacter [email protected] !"
}
];
//Ricavo la lingua del browser e setto Inglese come default
var MYLANG=_GetLang();
var MYLANG_FLAG=1;
for(var c=0;c<MEX.length;c++){
if(MYLANG.match(MEX[c].lang)){
MYLANG_FLAG=c;
break;
}
}
//Imposto la lingua del browser o se non presente il default
var TRANSLATE=MEX[MYLANG_FLAG];
//Messaggi di sistema
if(W.ML_SIGN_REMOVER==true){
alert(TRANSLATE.m00);
}else{
alert(TRANSLATE.m01);
}
//Interrompe l'eseguzione di assegnamento degli eventi
if(W.ML_SIGN_REMOVER_FLAG == true)return void(0);
var TRUETITLE=D.title;
var ELEMENT=null;
try{
var a00=D.getElementsByTagName('*');
if(!a00) return alert(TRANSLATE.m02);
//Aggiungo l'evento una sola volta
for(var i=0;i<a00.length;i++){
if(a00[i].addEventListener){
a00[i].addEventListener('mouseover',function(e){
ELEMENT=this;
D.title=(W.ML_SIGN_REMOVER==true)?ELEMENT.tagName:TRUETITLE;
B.style.cursor=(W.ML_SIGN_REMOVER==true)?"crosshair":"auto";
e.stopPropagation();
},false);
}else if(a00[i].attachEvent){
a00[i].attachEvent('onmouseover',function(e){
ELEMENT=this;
D.title=(W.ML_SIGN_REMOVER==true)?ELEMENT.tagName:TRUETITLE;
B.style.cursor=(W.ML_SIGN_REMOVER==true)?"crosshair":"auto";
e.stopPropagation();
});
}
}
if(B.addEventListener){
B.addEventListener('click',function(e){
if(W.ML_SIGN_REMOVER==true && ELEMENT!=null){
if(ELEMENT.tagName.toUpperCase()!='HTML' && ELEMENT.tagName.toUpperCase()!='BODY'){
ELEMENT.parentNode.removeChild(ELEMENT);
ELEMENT=null;
e.stopPropagation();
}
}
},false);
}else if(B.attachEvent){
B.attachEvent('onclick',function(e){
if(W.ML_SIGN_REMOVER==true && ELEMENT!=null){
if(ELEMENT.tagName.toUpperCase()!='HTML' && ELEMENT.tagName.toUpperCase()!='BODY'){
ELEMENT.parentNode.removeChild(ELEMENT);
ELEMENT=null;
e.stopPropagation();
}
}
});
}
W.ML_SIGN_REMOVER_FLAG=true;
return void(0);
}catch(err){
alert(TRANSLATE.m03);
return void(0);
}
}(window,document,document.body));
[/spoiler]
La lingua viene settata in automatico, se riscontrate dei problemi non esitate nel contattarmi o commentare questo post.
Lingue/IT-EN-FR |