前端js开发浏览器兼容性基本原则

  1. 标签自定义属性,通过getAttribute和setAttribute访问,而不要用点成员的方式
  2. 表单中增加表单项,不要用字符串拼接成html的方式。要通过dom操作
  3. 在主流浏览器中换行符是一个文本节点,而老ie会忽略掉
  4. 判断对象的一个成员(属性或方法)是否存在,可以用 "成员名" in 对象的方式
  5. if条件(括号内)的代码出现异常时,并不影响程序继续运行,相当于返回false
  6. 光标样式cursor=hand只有IE支持,建议使用cursor=pointer
  7. 表格行tr的默认样式是table-row不是block,如果不知道是什么也可以设置为空
  8. 老ie不支持string.trim(),老ie不支持string.startWith()
  9. iframe的src属性不要写#否则非IE会出现当前页面嵌套当前页面。
  10. iframe中的页面,提交之后,父层可能无法获取到子页面中的对象
  11. 通过索引获取数组元素要用中括号[],不要用小括号(),否则非IE浏览器提示找不到此方法。比如rows[0]获取表格第一行
  12. 删除本节点IE使用node.removeNode(true)而主流方法只能是通过父节点删除子节点node.parentNode.removeChild(node)
  13. form对象在执行submit后的代码不能有alert、return、close(关闭窗口或页面)等操作,某些版本IE会导致不会执行提交动作。

时间仓促没有整理出代码实例,以后有时间再补上。

你可能感兴趣的:(前端js开发浏览器兼容性基本原则)