Bookmarklet | Element Removal

Element Removal | per rimuovere uno o più elementi in una pagina

Element Removalquesto 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.

Chrome FireFox OperaIE

 Lingue/IT-EN-FR

Pubblicato da Leonardo Ciaccio

Se non controlli te stesso non potrai mai controllare i tuoi risultati !

Lascia un commento

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Vai alla barra degli strumenti