Foros del Web » Programando para Internet » Javascript »

Div dinamicos

Estas en el tema de Div dinamicos en el foro de Javascript en Foros del Web. Hola a todos, Estoy creando unas capas dinamicamente en una pagina para hacer un menu. utilizo este codigo en Js: document.write("<div id='index1' onmouseover='Ratonencima(this.id)'>hola</div>") function Ratonencima(id){ ...
  #1 (permalink)  
Antiguo 16/09/2011, 03:21
 
Fecha de Ingreso: noviembre-2004
Ubicación: ELche
Mensajes: 153
Antigüedad: 19 años, 5 meses
Puntos: 0
Exclamación Div dinamicos

Hola a todos,

Estoy creando unas capas dinamicamente en una pagina para hacer un menu.

utilizo este codigo en Js:

document.write("<div id='index1' onmouseover='Ratonencima(this.id)'>hola</div>")
function Ratonencima(id){
document.getElementById(id).style.color= "#AE887C";
}
function Ratonfuera(id){
document.getElementById(id).style.color ="#000";
}

Lo que quiero es que si pasa por encima el raton que se cambie el color del texto y al salir que se vuelve a colocar en negro.

Pues lo que me ocurre es que si no le paso ningun parametro a la función Ratonencima si que funciona pero sin el id para saber cual es el elemento a realizar el cambio, solo funciona si la funcion no pasa nada.

También he utilizado el this dentro de la función pero tampoco me funciona.

Además el texto esta selecciónable y quiero que no se pueda, que cuando pase el raton por encima no cambie el puntero a texto.

Alguien sabe como hacerlo, porque llevo tiempo con esta tonteria.

También es cierto que llevo poco tiempo con Javascript.

Un saludo

Y gracias de antemano.
  #2 (permalink)  
Antiguo 16/09/2011, 04:29
Avatar de jesusbg  
Fecha de Ingreso: septiembre-2011
Ubicación: Santiago de Compostela
Mensajes: 41
Antigüedad: 12 años, 7 meses
Puntos: 1
Respuesta: Div dinamicos

buenos días:

Si el parámetro es this le estás pasando el objeto entero. Para entendernos: si lo haces en un input envías el objeto input y también todos sus atributos.
si tienes algo smilar a esto

<div id="xxx" onmouseover="Ratonencima(this)">

en la funcion
function Ratonencima(obj) {
//manejas los parámetros del div
obj.style.float="donde quieras que flote";
}


Saludos!

EDIT: se me olvidaba!

puedes hacer <div id="xxx" onmouseover="Ratonencima('xxx')"> ==> pasarle el id del div en la llamada

Saludos!

Última edición por jesusbg; 16/09/2011 a las 04:30 Razón: se me olvidaba
  #3 (permalink)  
Antiguo 16/09/2011, 09:50
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 21 años, 5 meses
Puntos: 317
Respuesta: Div dinamicos

Es que no tiene Ratonencima(this) sino Ratonencima(this.id), jesusbg. Apunta al identificador, no al objeto.

En principio debería funcionar. Quizá el drama esté en el resto del código ... que olvidaste poner, Picher. Nos ayudaría bastante que enviaras desde <html> hasta </html>, no digo el código superfluo, sólo el necesario para ver el problema copiando y pegando, sin tener que escribirlo nosotros.

Te hice un ejemplo a las apuradas, sin el document.write porque supongo que con eso estás bien.
También corregí algún error "de apurado" que cometiste, como mezclar formato 4K y 16M en los colores y la falta de algún evento.

Código:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head>

<style>
div {color: black; background-color: yellow; border-style: inset; border-width: 1ex; 
font-size:300%; font-family: serif; font-weight: 900; text-align: center; cursor: default; }
</style>

<script>
function Ratonencima(id){ 
document.getElementById(id).style.color= "#AE887C";

//document.getElementById(id).title = id;
}
function Ratonfuera(id){
document.getElementById(id).style.color ="#000000";
}
</script>
</head>
<body>

<div id="alfa" onmouseover="Ratonencima(this.id)" onmouseout="Ratonfuera(this.id)">ALFA</div>

<div id="bravo" onmouseover="Ratonencima(this.id)" onmouseout="Ratonfuera(this.id)">BRAVO</div>

<div id="charly" onmouseover="Ratonencima(this.id)" onmouseout="Ratonfuera(this.id)">CHARLY</div>

</body></html>
No entendí lo de "seleccionable", creo que te refieres solamente al tipo de cursor, pero si realmente quieres evitar que te lo copien puedes buscar específicamente eso en el Foro, yo mismo sé que puse unos ejemplos.

Dependiendo del contenido, puedes tener un falso "onmouseout" al entrar en el texto. Te dejo un enlace a donde lo discutimos.

Insisto, si quieres ayuda, ¡la próxima vez danos un poco menos de trabajo! : pon el código de ejemplo entero y explica con lujo de detalle, para que no tengamos que adivinar o repreguntar.
Espero que te sirva, y si no, te das otra vuelta.

Saludos

furoya

Problemas con onMouseOut

Etiquetas: dinamicos, js
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 00:23.