2010-12-30 10 views
5

Estoy usando JavaScript para cambiar el título de un elemento. Sin embargo, ahora me doy cuenta de que Firefox no muestra el nuevo título. Tienes que mover el mouse fuera del elemento, y luego moverlo hacia atrás, solo para que funcione. Como estoy trabajando con un elemento grande que ocupan gran parte de la pantalla, es probable que el usuario no lo consiga fácilmente.¿Hay alguna manera de obligar a Firefox a volver a mostrar un título/información sobre herramientas?

¿Hay alguna manera de obligar a Firefox a volver a mostrar el título?

Quizás haya una forma de forzar a Firefox a devolver el elemento o algo así?

Gracias, Grae

+0

Puede intentar eliminar el elemento por completo y volver a insertarlo en el DOM. Sin embargo, ni idea de si eso funcionará, más la reinserción correcta sería complicado –

+0

En una nota similar, tal vez intente 'mostrar: ninguno' el elemento y hacerlo visible de nuevo de inmediato? –

+0

Voy a probar ambos. Suena razonable –

Respuesta

2

Yo recomiendo usar algo así como una información sobre herramientas jQuery para lograr esto, veo aquí: http://docs.jquery.com/Plugins/tooltip

+1

No seré feliz si tengo que cambiar todo ahora. –

+0

no tiene que cambiar todo ... solo la forma en que muestra la información sobre herramientas. – drudge

+0

Puede que tengas razón. Creo que trabajo en esto por el resto del día, y luego hago un método de información diferente mañana. –

0

La única manera que se me ocurre es utilizar una biblioteca para mostrar información sobre herramientas.

Algo como esto: http://flowplayer.org/tools/tooltip/index.html no utiliza información sobre herramientas actual, pero puede mostrar los datos fácilmente. Y estoy seguro de que puede actualizar el contenido que se muestra si es necesario.

+0

No seré feliz si tengo que cambiar todo ahora. –

1

He resuelto el mismo problema con este JavaScript. Para cada elemento donde necesito este comportamiento hago (elemento es obviamente el nombre del elemento; o))

if (element.disabled) 
{ 
    element.title=element.value; 
} 
else 
{ 
    element.onmouseover=function(){element.title=element.value;}; 
    element.onmouseout=function(){element.title=null;}; 
} 

si el elemento está desactivado, acaba de establecer el título al principio ... que establezca la elemento en nulo en el mouseover, porque de lo contrario mostrará brevemente el antiguo y luego lo corrige.

Cuestiones relacionadas