2009-01-31 10 views
10

Soy un desarrollador web centrado en la interfaz de usuario.¿Es posible desactivar IE8 "aceleradores" en mi sitio web?

Muchas funciones de interfaz en mi aplicación web se basan en hacer doble clic.

En IE, aparece el nuevo icono de "aceleradores" molesto que interfiere con mi interfaz de usuario. ¿Es posible desactivar "aceleradores" en mis páginas? Tal vez con un nuevo y estúpido IE metaetiqueta?

+0

Sí, esas cosas son horribles. – BobbyShaftoe

+3

Los aceleradores aparecen, afaik, cuando resalta/selecciona texto en una página. Como alguien a quien le gusta seleccionar texto, son molestos, sí. Pero más aún, los sitios web que deciden seleccionar o hacer doble clic en el texto significan algo :). – MichaelGG

Respuesta

8

Aunque lo siento por usted (no creo que haya ninguna forma de deshabilitarlos en el código), desaconsejaría utilizar un doble clic para gran parte de su interfaz de usuario, ya que va en contra del paradigma de la Web.

Muchos usuarios se les dice en sitios no haga doble clic para evitar transacciones duplicadas etc.

La única cosa que realmente ocurre como solución alternativa sería hacer algún tipo de explícito:

.blur(); 

en el elemento que activó el evento de doble clic. No he intentado esto, pero hubiera espero esto haría desaparecer el icono accelerator.

+10

Estás siendo caritativo, una interfaz web basada en hacer doble clic es simplemente una gran WTF antigua. –

+2

En serio, haciendo doble clic? WTF? – SamB

0

duda si todavía necesita esto, pero para todos los que se molestó por esta función acelerador, ir a ...

Herramientas> Opciones de Internet> Opciones avanzadas

A continuación, desactive la casilla de "botón Acelerador de visualización de selección ", en" Navegación ".

Saludos.

+1

Su pregunta no es cómo desactivarlo en su copia de IE8, sino cómo desactivar la funcionalidad para otras personas copias de IE8 cuando están en su sitio web. – Beska

1

Puede utilizar Internet Explorer personalizado Event selectstart with return false para evitar que se muestre ese icono de sector feo.

actualización: He visto varias soluciones, que implican algo como getElement -> add them event listener. No es la solución ideal. El uso de burbujas es mejor. Simplemente registre un inicio de selección en el documento, es suficiente.

6

usando jQuery:

$('body').bind('selectstart', function(e) { return $(e.target).is(':input'); }); 

Esto desactivará la selección de contenido de la página, a excepción de en los elementos de entrada.

+1

Excelente respuesta, y justo lo que estaba buscando. Tenía un elemento con un evento de clic de jQuery, y al hacer clic demasiado rápido/mover el mouse al hacer clic se activaba la función de acelerador. Agregué lo siguiente para mi clase de elementos: $ ('div.myelementclass'). Bind ('selectstart', función (e) {return false;}); Todos ahora funcionan genial :) – BrynJ

-1

Posiblemente, en el sitio web, podemos bloquear aceleradores agregando el atributo oncontextmenu = "return false:" en el elemento del cuerpo. Dudo que un colon pertenezca allí, y tal vez la palabra "falso" es todo lo que se necesita para el valor. Teniendo en cuenta cuándo se emitió el consejo, esto fue para la versión beta; No sé si la versión final de IE8 tiene el mismo método de desactivación. No tengo IE8 o reciente Win, así que no puedo probarlo. Puede tener el efecto de bloquear todos los menús contextuales, no solo los específicos del sitio web que se está viendo. Vea la última publicación en http://www.utteraccess.com/forums/showflat.php?Cat=&Board=50&Number=1804672&Zf=&Zw=&Zg=0&Zl=a&Main=1804672&Search=true&where=&Zu=140925&Zd=l&Zn=&Zt=15&Zs=b&Zy=#Post1804672&Zp= tal como se acordó el 8-20-09.

Si los sitios web que aceptan clics dobles son una mala idea: están bien si se les informa a los visitantes, tanto a los visitantes que desean obtener el beneficio de hacer doble clic como a los visitantes que necesitan saber que no haga doble clic para evitar efectos no deseados. De lo contrario, dudo que sean buenos en usabilidad.

Gracias.

- Nick

+1

No funciona. Agregarlo a cualquier elemento todavía resulta en el menú del acelerador. – Gregory

3

En mi caso, lo acelerador fue apareciendo cuando estaba rastreando eventos mousedown/mousemove/mouseup. Para evitarlo, borré la selección del documento en el mouseup.

if (document.selection) 
    document.selection.clear(); 
+0

Tuve el mismo problema: al arrastrar un excanvas (para dibujar líneas), aparecía el icono del acelerador. Muchas gracias por su solución, ¡funciona! –

Cuestiones relacionadas