ie下css兼容问题

今天发现在ie下有几个css兼容性问题,这里和大家分享下:


1、除了edge外其他ie版本浏览当a标签href='javascript:void(0);'时会触发window.onbeforeunload事件,如果页面有定义改事件的处理函数则会执行。onclick、onbeforeunload跟href三者之间的先后运行关系是这样的:onclick > onbeforeunload > href。那如何避免 呢?

    解决方案一:

    通过href='#'来替换href=‘javascript:void(0);’。但又会出现一个问题:chrome下当a的href属性设置‘#’时,点击时页面位置会跳到顶部。


    解决方案二:

    既然a元素相关事件执行顺序为onclick > onbeforeunload > href,那我们可以在onclick事件中写一句return false,onbeforeunload事件就不会执行了。

    如: 

    //js
    $(function(){

          window.οnbefοreunlοad=function(){

          return '你确定要关闭页面吗?'

    };

    $('#aa').click(function()  {

         //业务处理代码

          return false;

      })

    })

   function dealData(){     

         //业务处理代码

          return false;

   }

   //html

   <a id='aa' href='javascript:void(0);'>执行业务逻辑</a><span style="font-size:12px;"></span>

    效果:当关闭页面时,会提示“是否离开页面?”的提示框。当点击aa时不会提示。

    注意:直接在html中指定onlick='dealData();'是无效的,必须在jquery中才有效


2、ie7及以下版本当多个元素样式中同时设置了z-index值时,显示的层级关系并不只和z-index值大小有关,而且和元素所在html节点深浅有关,越浅即越接近根节点的元素显示层级越优秀,即使z-index值大但节点深的元素也会排在z-index值小但节点浅的元素后面。同级z-index值大的优先显示。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值