zoukankan      html  css  js  c++  java
  • 浏览器兼容性优化

       从提出离职申请后,公司项目涉及浏览器兼容性问题作为第一优先级提上日程,这本是来公司要做的第一件事,到公司入职的前2天时间将问题最突出的左侧导航菜单给替换了,之后由于要给别的项目救火,优化工作被搁置了,搁置原因并非是优先级不高,而是可以采用缓兵之计,然后一缓就缓了半年之久,不是我的变化还不知道会缓到什么时候,这也是我想离职的原因之一,做事不聚焦,缺少目标性,习惯性拖拉。

      要优化的项目是公司的核心框架之一,基于此框架构建了不少项目,有多个版本,其中不乏项目缺少源代码的,经历了不少人,期间做过些小的调整,但懂的人都已离开,剩下的人只知道设计思路,缺乏具体代码实现的了解,在当前人员严重不足的前提下,大家都疲于应对项目,缺少对框架的学习和了解,年久失修急需优化和更新。

      由于年代久远,当初是针对早起ie版本开发的,浏览器兼容性问题尤为突出,其样式和js代码在新版ie下都无法支持,更别说其他浏览器,客户的反馈和抱怨日益增多。

      说完项目背景和前提,说说具体优化过程和思路。这两天开始集中优化,首先回顾下来公司干的第一票,左侧导航优化的步骤,思路很清晰,将原有服务端树型控件换成客户端控件(ztree),前后端通过ajax进行数据通信,将前后端逻辑进行解耦,通过引入jquery逐步替换原有原生js逻辑,达到浏览器兼容和代码简洁的效果。

    兼容性问题主要表现在js的规范上,这给后端开发的我来说也增添不少烦恼,简单的代码倒是能看懂,工作关系以前很少写js代码,这里面包含大量没有注释的业务代码,给优化带来一定难度,通过大量博客园、w3school小量stackoverflow帮我搞定难题,只是不熟练改起来进度偏慢,熟能生巧,是这几天感触最深的,通过今天一天的优化已经完成了项目95%的工作,如果不考虑特殊业务场景,完全兼容ie,firefox,以及最爱chrome,为自己的撤离也交出一份完整的答卷。

  • 相关阅读:
    数据结构基础知识(2)
    ASIHttpRequest异步请求网络崩溃解决
    [置顶] Android仿人人客户端(v5.7.1)——采用ViewGroup做父容器,实现左侧滑动菜单(三)
    Linux中ifcfgeth0配置参数说明
    什么是redis
    CentOS网络接口配置文件ifcfgeth详解
    查看Linux版本
    CentOS7 network.service loaded failed 处理技巧
    如果这都不算爱
    ACL Security In Seam, Part 1
  • 原文地址:https://www.cnblogs.com/jingsha/p/5754508.html
Copyright © 2011-2022 走看看