360浏览器兼容问题

本地测试正常,生产机以360浏览器打开默认为兼容模式。js报错,改为极速模式显示正常:

 

在head标签中添加一行代码:

<html>

<head>

<meta name="renderer" content="webkit|ie-comp|ie-stand">

</head>

<body>

</body>

</html>

content的取值为webkit,ie-comp,ie-stand之一,区分大小写,分别代表用webkit内核,IE兼容内核,IE标准内核。
若页面需默认用极速核,增加标签:<meta name="renderer" content="webkit">
若页面需默认用ie兼容内核,增加标签:<meta name="renderer" content="ie-comp">
若页面需默认用ie标准内核,增加标签:<meta name="renderer" content="ie-stand">


以上方案应该好用,但是我这里不行,经查验,根本原因是与IE不兼容,原因是ajax发送格式错误

原方式:

var data = new Object();

data.userId=userid;

  url:"/zztabc/pr/getMyReceivers.do",
        async: true,
        data:data,

现方式:两点需要注意

$.ajax({
        url:"/zztabc/pr/getMyReceivers.do",//路径改为绝对路径
        async: true,
        data:{userId:userId, type:debtType,real_name:"",},//json方式传参
        type:'POST',
        dataType:'json',
        success:function(data){

 

 

在这之后有些页面仍存在问题,不同电脑不同的浏览器不同的版本都会影响ajax执行,偶然发现按一下f12之后便显示正常:解决方案,去掉所有console.log("xxxxx")

原因是某些IE内核浏览器只有打开console(f12)后才会存在console对象

 

posted @ 2018-01-22 11:18  黑猫先生  阅读(529)  评论(0编辑  收藏  举报