No todos podemos o queremos gastarnos un dinerillo en un alojamiento, en un dominio, etc... y por ello debemos recurrir a servidores gratuitos tipo Lycos, ... ¿Cuál es el inconveniente?, pues que amablemente te meten publicidad en tu página sin preguntarte (claro, que si es gratuito es por algo y por eso ponen publicidad y por eso no te preguntan).
Evitar esta publicidad es sencillo, un simple script y usando lo explicado anteriormente sobre el uso de atributos, haremos que desaparezca la molesta publicidad.
<< Ocultar resto
Está claro que cada servidor tiene su método de meter publicidad, y puede que lo que vaya a explicar ahora no funcione contigo. Yo empecé a hacer la típica página que la tomas con mucho entusiasmo y que no llegas a acabar, decidí ponerla en Lycos y fue allí cuando me encontré con que ponían publicidad en todas las páginas (bueno, en casi todas, dependía de varios factores) y que hacía que se me descuadrara todo el diseño.
¿Cómo funciona esta publicidad?, incluyen un código HTML al inicio de tu página que es la que contiene toda la publicidad. Suele estar incluido en una etiqueta
DIV y contiene código Javascript que comprueba que la capa con la publicidad sigue en su sitio y que es visible. La solución es sencilla, coger el DIV incustrado y hacerlo desaparecer (usando estilos). El problema esta en el código que comprueba cada cierto tiempo el estado de la publicidad, este código usa la funcion
setTimeout para comprobar el tamaño del DIV, si está oculto (mediante
visibility:hidden o mediante
display:none), si se había desplazado fuera de la pantalla, ... Afortunadamente el quitarlo es sencillo, solo se debe usar la función
clearTimeout con el identificador usado en la creación (setTimeout). Averiguar el identificador también es sencillo, debido a que cada vez que creas un identificador es de forma consecutiva, por lo que solo era necesario crear uno nuevo y coger el n-1 para obtener el que estábamos buscando.
Una vez cancelada la ejecución del código de comprobación, se tiene que eliminar la capa con la publicidad. Como he dicho anteriormente, la publicidad se encuentra metida dentro de un elemento DIV, pero el identificador de ese elemento es desconocido y no es siempre el mismo, por lo que tenemos que coger todos los elementos DIV y comprobar si es uno que he creado yo o no, si no es mio, le cambiamos el estilo y listo... adios publicidad.
¿Inconvenientes?, dos, que la limpieza de la publicidad se tiene que hacer una vez cargada la página, creándose un efecto de parpadeo (aparece/desaparece la publicidad) y que cada vez que creamos una etiqueta DIV, le tenemos que añadir un atributo propio, ej:
<DIV id="contenido" mio="si">...</DIV>
El código necesario sería el siguiente:
function elimininaLaPublicidad() {
divMolestos = document.getElementsByTagName("DIV");
var id = setTimeout("alert()", 100000);
clearTimeout(id);
clearTimeout(id-1);
for (i=0; i<divMolestos.length; i++) {
if (divMolestos[i].getAttribute("mio") != "si") {
divMolestos[i].style.display="none";
}
}
}
...
...
...
<BODY onload="elimininaLaPublicidad()">
Este código está comprobado en Firefox, IE y Opera para Windows. Para los usuarios de Firefox os recomiendo usar la extensión
Adblock para eliminar publicidad pesada y otras cosas.
3 Comentarios:
muchas gracias por este post-. Estoy preparando una web y la tengo en lycos y aunque sí había conseuido que la publicidad no se viera en explorer, en Firefox era incapaz de quitarla
Por Anónimo, a las 4/25/2006 08:27:00 p. m.
El problema es que la gente de Lycos suele cambiar el script, por lo que quizas a veces te volverá a aparecer.
Por Anónimo, a las 4/26/2006 08:37:00 a. m.
noooo... hay uno que funciona desde hace varios años. No se si lo han cambiado o no, pero funciona perfectamente tanto en explorer como en firefox o cualquier otro. Busca "la guer de Nacho". Salud
Por Anónimo, a las 5/05/2006 11:48:00 p. m.
Publicar un comentario
<< Inicio