web前端:JS中的兼容性问题

    作者:浪子、轻易不回头 更新于: 2020-03-05 21:38:22

    Web开发

      兼容性(compatibility)是指硬件之间、软件之间或是软硬件组合系统之间的相互协调工作的程度。兼容的概念比较广,相对于硬件来说,几种不同的电脑部件,如CPU、主板、显示卡等,如果在工作时能够相互配合、稳定地工作,就说它们之间的兼容性比较好,反之就是兼容性不好。

      JS中的兼容性问题

      事件对象兼容

      window.event只能在IE下运行,而不能在Firefox下运行,这是因为Firefox的event只能在事件发生的现场使用。Firefox必须从源处加入event作参数传递。IE忽略该参数,用window.event来读取该event。

      解决的方法:

      event=event||window.event

      阻止事件冒泡兼容

      stopPropagation()和cancelBubble,前者是方法,是标准的写法,后者是属性,赋值true表示阻止,是IE的写法。

      解决方法:

      判断stopPropagation是否存在,如果存在则用标准写法否则则用IE的写法,不可反过来判断。

      event.stopPropagation?event.stopPropagation():event.cancelBubble=true;

      阻止默认行为兼容

      preventDefault()和returnValue()

      解决方法:

      event.preventDefault?event.preventDefault():event.returnValue=false;

      returnfalse;

      在软件行业,一种是指某个软件能稳定地工作在若干个操作系统之中,就说明这个软件对于各系统有良好的兼容性。再就是在多任务操作系统中,几个同时运行的软件之间,如果能稳定地工作,不频繁崩溃、死机,则称之为它们之间的兼容性良好,反之兼容性不好。另一种就是软件共享,几个软件之间无需复杂的转换,即能方便地共享相互间的数据,也称为兼容。

课课家教育

未登录