Web Tip # 1 - Sólo lo relativo
Para reducir los scripts JavaScript encargados de compatibilidad entre browsers, se puede hacer lo siguiente.
En lugar de poner el código para cada browser en cada página:
if (isFirefox()) {
// firefox related code...
} else if (isIE()) {
// internet explorer related code...
}
Podríamos verificar el browser una vez en la primer página que visite el usuario, donde se genere la sesión, y en la misma sesión guardar el browser, mediante XMLHttpRequest.
if (isFirefox()) {
// update session, set browser is firefox
} else if (isIE()) {
// update session, set browser is internet explorer
}
De ésta forma, cada vez que se necesite mandarle una página al usuario, se chequea en la sesión el tipo browser que se está utilizando, y se manda sólo el código Javascript+HTML que el usuario va a ejecutar en su máquina, ahorrando nuestro preciado ancho de banda, haciendo que la página cargue más rápido, y que el código también se ejecute mas rápidamente ya que nos estaríamos ahorrando de hacer los chequeos de browser.
Ésto es posible ya que la sesión se guarda por usuario, hasta que el usuario cierre su browser. Es decir, jamás un usuario va a poder cambiar de browser durante una sesión, porque al momento de hacerlo su sesión va a desaparecer.