2008-11-13 10 views
5

Tengo un popup div mostrando en el botón derecho (sé que esto rompe la funcionalidad esperada, pero Google Docs lo hace, ¿por qué no?) Sin embargo, el elemento que muestra mi ventana emergente tiene un atributo de "título" que aparece sobre el parte superior de mi div. Todavía quiero que la información sobre herramientas funcione, pero no cuando aparece la ventana emergente.¿Cómo detener el atributo de título para que se muestre información sobre herramientas temporalmente?

¿Cuál es la mejor manera de detener la información sobre herramientas que se muestra mientras la ventana emergente está abierta/abierta?

Editar: Estoy usando jQuery

Respuesta

4

Con jquery puede enlazar la función de desplazamiento para establecer también el atributo de título en blanco en el uso y luego restablecerlo en el mouse.

$("element#id").hover(
function() { 
    $(this).attr("title",""); 
    $("div#popout").show(); 
}, 
function() { 
    $("div#popout").hide(); 
    $(this).attr("title",originalTitle); 
} 
); 
+0

nice! Estoy usando jQuery tan perfecto (debería haberlo mencionado) –

+2

¿De dónde viene el título original? Puede almacenarlo usando .data() para una solución más general. –

+0

¿cómo funciona la información sobre herramientas todavía en vuelo estacionario en esta solución, al tiempo que permite hacer clic derecho para emergente? – bcm

1

Creo que la configuración de espacio en blanco y cuando se cierra la ventana emergente, el ajuste de nuevo el texto adecuado. Creo que esta es la forma más fácil de detenerlo.

3

Aquí es otro ejemplo de cómo se puede hacer mediante el uso de data para el almacenamiento de valor y prop para asignar valor

$('[title]').on({ 
    mouseenter : function() 
    { 
     $(this).data('title', this.title).prop('title', ''); 
    }, 
    mouseleave: function() 
    { 
     $(this).prop('title', $(this).data('title')); 
    } 
}); 
1

Para mí, no me importa lo que el contenido de la etiqueta del título estaba. Acabo de hacerlo:

$('a').hover(function() { 

    $(this).attr('title', ''); 

}); 

Que detuvo la etiqueta de título para mostrar.

Cuestiones relacionadas