2010-07-23 13 views
6

Tengo algunos problemas con nuestro viejo amigo IE6. The site I'm working on es para un cliente del sector público, por lo que debe ser compatible con IE6. El control deslizante está bien en IE7 +, Firefox, Safari y Chrome. ¡He intentado todo lo que puedo pensar, pero me estoy quedando en blanco! ¿Puede usted ayudar?jQuery slider y IE6 Issues

IE6 en una PC. IE6 Screen grab http://citywest.bangtest.co.uk/stackoverflow/ie6.png

Chrome en una Mac Chrome on a Mac http://citywest.bangtest.co.uk/stackoverflow/chrome.png

+1

+1 por "drawing a blank" " –

Respuesta

1

que estoy viendo un error en la página con IE 6, dubugging la página con el editor de scripts ms me lleva a este archivo:

http://citywest.bangtest.co.uk/sites/all/themes/citywest/inc/js/jquery.custom.js

y esta línea:

$().newsTicker(options); 

También puedo decirle que varias líneas $(document).ready( dentro del mismo documento js no son necesarias dentro de ese archivo. Debes consolidar esas declaraciones.

Ie6 no proporciona una excelente manera de depurar, pero como ie6 dice que tienes un error en esa línea, es un buen lugar para comenzar a buscar.

-2

No codifique para IE 6. Es un navegador obsoleto y el último sistema operativo con el que se envió fue Windows XP. Algunos de los códigos más nuevos simplemente no funcionan bien con IE6. Si lo haces funcionar, tienes que crear hacks para que muestre el código correctamente y pasar muchas horas haciéndolo. Código para IE8 y Firefox3 +, use javascript para detectar la versión del navegador y un mensaje para actualizar su navegador.

+4

@kinijite Parece que OP no tiene otra opción. Probablemente sea obligatorio en su contrato o algo así. –

+0

@Peter - respuesta perfecta y sí, está en el contrato. @Kinjite - IE6 es una mierda pero tengo que trabajar con eso en este trabajo. – Shaun

+1

@Shaun y kinjite: y no use la detección del navegador, utilice detección de características en su lugar, consulte [Detección de funciones no es detección del navegador] (http://www.nczonline.net/blog/2009/12/29/feature-detection -is-not-browser-detection /). –

4

No puedo evitar saltar al viejo problema "IE6 hasLayout" (ya que esto parece ser un error visual). Puede que valga la pena que revises tus elementos para asegurarte de que tienen "hasLayout": la mayoría de los problemas de renderizado que he encontrado para IE6 que "no tienen sentido" se relacionan con esta propiedad.

http://www.satzansatz.de/cssd/onhavinglayout.html

Una forma rápida y sucia para ver si el problema se relaciona con "hasLayout" es añadir la no-estándar, es decir patentada propiedad CSS "zoom: 1;". Esto NO validará, pero otorgará "hasLayout" a cualquier elemento al que se aplique. Solo póngalo en todos los elementos involucrados, y podría solucionar el problema ... Entonces, armado con la terrible solución, puede encontrar la manera de validar :)

/* in your css */ 
.my_box { 
    zoom: 1; 
}