问题描述:在ios系统的微信浏览器和safari浏览器,偶尔点开时字体图标显示不了,总是框框。分析:分享跳到分享页——主页用户自行分享主页——判断是否——去到autologin自动登录原因:因为ios的缓存机制问题,跳到index页面时加载ttf文件,判断自动登录方法又去到autologin页面,再登录跳回来时便不再加载index页面的ttf文件,但其实ttf文件没有加载到主页页面跳转到自动登录页面前,浏览器取消了对字体文件下载的接收,但浏览器认为字体已经缓存下来,页面跳转回来后不再请求之前被取消下载的字体文件。所以这问题应该是Safari缓存机制的BUG所致byOneselfShare(); //判断是否为游客自行分享的————————until.jsfunction byOneselfShare() {tourHasvalue(); //接收参数console.log("dbkey:" + dbkey);if(dbkey == undefined || dbkey == "") { var currurl = window.location.href; window.localStorage.setItem("currURL", currurl); //自动登录需要跳转的页面 window.localStorage.setItem("TRstaffid", linkstaffid); //业务员id存储起来 window.localStorage.setItem("TRpids", linkpids); //业务员id存储起来 console.log("初次登录"); window.location.href = "autoLogin.html?cid=" + linkcid;} else { console.log("linkmid:" + linkmid + "---linkcid---" + linkcid); if(linkmid != "undefined" || linkcid != "undefined") { if(linkmid != ParentmanufacturersId || linkcid != manufacturersId || linkpids != TRpids || linkstaffid != TRstaffid) { console.log("链接传值账号登录1111----" + "--linkmid---" + linkmid + "---linkcid---" + linkcid + "--linkpids---" + linkpids + "---linkstaffid---" + linkstaffid); console.log("已有账号登录2222----" + "--ParentmanufacturersId---" + ParentmanufacturersId + "---manufacturersId---" + manufacturersId + "--TRpids---" + TRpids + "---TRstaffid-" + TRstaffid); console.log("----------不同厂家经销商的用户------------------------------"); var currurl = window.location.href; window.localStorage.setItem("currURL", currurl); //自动登录需要跳转的页面 window.localStorage.setItem("TRstaffid", linkstaffid); //业务员id存储起来 window.localStorage.setItem("TRpids", linkpids); //业务员id存储起来 window.location.href = "autoLogin.html?cid=" + linkcid; } }}}修改:使其完全加载完,再执行这个方法。如下window.onload = function(){ byOneselfShare(); //判断是否为游客自行分享的 }就可以了,参考:https://segmentfault.com/q/10...
