zoukankan      html  css  js  c++  java
  • web产品浏览器兼容性问题你有考虑到吗?

      通常,动态网页除了Server端的代码撰写Client端代码也必须下不少工夫。例如:表单提交前的数据验证、图片的轮播、菜单的收合等等。

      因此,对于Client端是否能正常执行指令码也必须适当的考察,然而目前浏览器的种类繁多,对Java代码的解读也不同;所以如何撰写出能在大部份浏览器上正常执行的指令码是非常重要的,否则网页的跨平台性将会大打折扣。

      以目前较多人使用的IE及FireFox来说,有些指令码其实并不通用,所以在程序的撰写上必须要多加注意,因此有时候得视情况撰写替代的代码以增加兼容性。

      举例来说:

      指令:document.getElementsByName(“myID”)

      作用:找出所有ID=“myID”的元素遵回传Array

      虽然此一指令能够在IE上正常执行,但是到了FireFox上却是一点用也没有。

      因此,可以考虑将这些元素的ID额外加上编号x(x代表任意数字),然后在网页加载后,再使用document.getElementById(“myID_x”)将各个元素一一存进一个Array。

      属性:e.innerText

      作用:存取元素的文字内容

      在IE上,可以使用e.innerText =“测试内文”;来指定元素e的内容;但是在FireFox上,innerText这个属性却没办法正常使用。

      所幸还有一个属性innerHTML可以在两者正常执行,因此应该尽量使用innerHTML来替代innerText。

      参数:

      说明:tbCell为table的cell元素、tbRow为table的row元素

      下列指令码是在row元素中,插入一个cell元素,index为插入位置

      tbCell =tbRow.insertCell();//IE执行正常、FireFox则否

      tbCell =tbRow.insertCell(index);//IE、FireFox皆正常

      对于常使用Client端指令码来产生动态产生元素的程序员而言,选择较高兼容性的指令码来撰写虽然比较费时;但是至少能够确保大部份的使用者都能正常显示、操作,也能减少许多因为兼容性而衍生出来的问题,最后欢迎优秀的开发者入驻程序员客栈(www.proginn.com)

  • 相关阅读:
    ASP.NET编程的十大技巧
    C#学习心得(转)
    POJ 1177 Picture (线段树)
    POJ 3067 Japan (树状数组)
    POJ 2828 Buy Tickets (线段树)
    POJ 1195 Mobile phones (二维树状数组)
    HDU 4235 Flowers (线段树)
    POJ 2886 Who Gets the Most Candies? (线段树)
    POJ 2418 Cows (树状数组)
    HDU 4339 Query (线段树)
  • 原文地址:https://www.cnblogs.com/proginn/p/5644148.html
Copyright © 2011-2022 走看看