Foros del Web » Programando para Internet » Javascript »

Desactivar href o window.document.links

Estas en el tema de Desactivar href o window.document.links en el foro de Javascript en Foros del Web. ¡Saludos! OBJETIVO DEL PROGRAMA Tengo un cuadro donde se despliegan seis avisos de patrocinantes (con o sin enlaces) durante un tiempo determinado. Si alguno de ...
  #1 (permalink)  
Antiguo 08/07/2011, 08:38
 
Fecha de Ingreso: mayo-2010
Ubicación: Cabudre - Lara - Venezuela
Mensajes: 7
Antigüedad: 13 años, 11 meses
Puntos: 0
Información Desactivar href o window.document.links

¡Saludos!

OBJETIVO DEL PROGRAMA
Tengo un cuadro donde se despliegan seis avisos de patrocinantes (con o sin enlaces) durante un tiempo determinado.

Si alguno de los seis avisos no está vendido, se muestra un anuncio colocando ese espacio en venta.


CODIGO
El código que estoy utilizando es el siguiente:


Código:
<html>
<head>
<script language='Javascript'>
/* Crear matriz de imágenes */
array_imagen = new Array(6)
array_imagen[1] = new Image(150,200)
array_imagen[2] = new Image(150,200)
array_imagen[3] = new Image(150,200)
array_imagen[4] = new Image(150,200)
array_imagen[5] = new Image(150,200)
array_imagen[6] = new Image(150,200)

/* Cargar la lista de gráficos para desplegar */
array_imagen[1].src = 'pub/patrocinante1.jpg'
array_imagen[2].src = 'pub/patrocinante2.jpg'
array_imagen[3].src = 'pub/patrocinante3.jpg'
array_imagen[4].src = 'pub/patrocinante4.jpg'
array_imagen[5].src = 'pub/mi_anuncio.jpg'
array_imagen[6].src = 'pub/mi_anuncio.jpg'

/* Crear matriz de URLs */
array_url = new Array(6)
array_url[1] = 'http://www.patrocinante1.com'
array_url[2] = 'http://www.miweb.com'
array_url[3] = 'http://www.patrocinante3.com'
array_url[4] = 'http://www.patrocinante4.com'
array_url[5] = 'http://www.miweb.com'
array_url[6] = 'http://www.miweb.com'


/* Control de despliegue de imágenes */
ys_contador = 1

/* Función para rotación de los avisos */
function ys_rotar_aviso()
{
window.document['ys_banner'].src = array_imagen[ys_contador].src
window.document.links[0].href = array_url[ys_contador]
ys_contador ++
if(ys_contador > 6) ys_contador = 1
setTimeout('ys_rotar_aviso()', 5000)
}
</script>
</head>

<body  topmargin="0" leftmargin="0" onload="ys_rotar_aviso()">
<a href="http://www.miweb.com" target="_blank"><img src="pub/mi_anuncio.jpg" name="ys_banner" width="150" height="200" border="0"></a>
</body>
</html>

Este código funciona bien y logra el objetivo que se desea excepto para los avisos que no se han vendido o para los patrocinantes que no tengan Web.


PROBLEMA
Al hacer click en los avisos que venden el espacio (caso 5 y 6) o en los avisos de patrocinantes que no tienen Web (caso 2), se despliega mi Web en una nueva ventana.


OBJETIVO DESEADO
Modificar el script o alguna parte del programa para que cuando se haga click en un aviso de venta o en un patrocinante sin web no se ejecute ninguna acción.


SOLUCIONES INTENTADAS
He intentado colocar:

array_url[2] = '#'
array_url[5] = '#'
array_url[6] = '#'

También he intentado:

array_url[2] = ''
array_url[5] = ''
array_url[6] = ''


Sin embargo, estas modificaciones lo que logran es que el gráfico se despliegue solitario en una nueva ventana y continúe la rotación de los avisos.



SOLICITUD AL FORO
Por favor, alguien que pueda indicarme cómo modificar el programa para que cuando se pulse en un aviso sin Web o en uno de los avisos que tengo para realizar la venta de mis espacios, la Web no dirija al visitante hacia ninguna otra Web y que simplemente no ejecute ninguna acción.

Agradezco cualquier ayuda sobre este tema y estoy dispuesto a aclarar cualquier duda con respecto a este planteamiento.

Cordialmente,
YOLED

Última edición por YOLED; 08/07/2011 a las 08:52
  #2 (permalink)  
Antiguo 08/07/2011, 09:33
Avatar de hmvr414  
Fecha de Ingreso: marzo-2011
Ubicación: Santiago de Cali, Colombia
Mensajes: 74
Antigüedad: 13 años, 1 mes
Puntos: 16
Respuesta: Desactivar href o window.document.links

se puede intentar cambiando el target del link segun el url:

usando:
Código Javascript:
Ver original
  1. array_url[2] = '#'
  2. array_url[5] = '#'
  3. array_url[6] = '#'

y:
Código Javascript:
Ver original
  1. function ys_rotar_aviso()
  2. {
  3. window.document['ys_banner'].src = array_imagen[ys_contador].src
  4. window.document.links[0].href = array_url[ys_contador]
  5. window.document.links[0].target = array_url[ys_contador] == '#' ? "_self" : "_blank";
  6. ys_contador ++
  7. if(ys_contador > 6) ys_contador = 1
  8. setTimeout('ys_rotar_aviso()', 5000)
  9. }
  #3 (permalink)  
Antiguo 08/07/2011, 09:47
 
Fecha de Ingreso: mayo-2010
Ubicación: Cabudre - Lara - Venezuela
Mensajes: 7
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Desactivar href o window.document.links

¡Magnífico! Funcionó tal como lo necesitaba.

Muchísimas gracias por tu asistencia y por la lógica tan sencilla que aplicaste.


TEMA CERRADO
  #4 (permalink)  
Antiguo 08/09/2011, 13:38
 
Fecha de Ingreso: septiembre-2011
Mensajes: 3
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: Desactivar href o window.document.links

Escribo en este foro para pedir ayuda en un script Java que me permita resolver el siguinete problema de manejo de strings:

Variable [texto]

Si el string: [href="http://en.wikipedia.org/wiki/"] existe en la variable [texto] y si [href="http://en.wikipedia.org/wiki/] + los 5 caracteres siguientes es diferente a [href="http://en.wikipedia.org/wiki/File]

Entonces: Remplaza todo lo que esta a la derecha de [href="] hasta ["] por [#]

Si no: No hacer nada.

El script tiene que hacer eso hasta que recorra toda la variable [texto].


Saludos y gracias de ante mano por la buena voluntad

Etiquetas: href, html, window.document
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:42.