IE 浏览器兼容问题

1、 在IE下使用域名room_staging 的时候 session 失效了

       解决方法: 改成 room.staging

      PS: 当直接使用IP去访问网站的时候也会导致session的失效

2、IE7、IE8不能使用.html() 赋值; 

      解决方法:使用document.getElementById(tag).innerHTML

      先在header中加入全局判断:

    

 <!--[if IE 7]>
            <script type="text/javascript">
               window.flag_IE7=true;
            </script>
     <![endif]-->
     <!--[if IE 8]>
            <script type="text/javascript">
                window.flag_IE8=true;
            </script>
     <![endif]-->

     然后调用自定义函数:

     /*

      * tag : 元素ID

      */

function setHtml(tag, html){
          if(window.flag_IE7 || window.flag_IE8){
              document.getElementById(tag).innerHTML =  html ;
          }else{
              $('#' + tag).html(html);
          }
       }

3、 使用innerHtml, 当html中含有js的时候,这些js会失效

       解决方法:将html中包含的这些js处理成<script type="text/javascript" defer="true"></script>

4、在IE7, IE8 下 当ajax最后一个函数加逗号时,ajax会失效, 报错误:SCRIPT1028: 缺少标识符、字符串或数字

     

 $.ajax({
          url: 'index.php?route=aaa/bbb',
          dataType: 'html',
         async:false,
         beforeSend: function() {
         },
         success: function(html) {
             setHtml('createAccount', html);
         },
      });

      解决方法: 去掉最后一个函数,逗号,这个函数可能是complete:{}, 也可能是error:{}

5、使用ajax的时候最好使用post提交的方式

      ajax 默认的提交方式是get

      $("#id").load("index.php?route=moduel/cart"); 也是get方式的

      在IE8 下, get方式的ajax经常不起作用:

      可以加上:

 $.ajaxSetup ({
        cache: false
    });

      以后碰到会继续添加

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值