问题描述:在ios系统的微信浏览器和safari浏览器,偶尔点开时字体图标显示不了,总是框框。
分析:分享跳到分享页——主页
用户自行分享主页——判断是否——去到autologin自动登录
原因:因为ios的缓存机制问题,跳到index页面时加载ttf文件,判断自动登录方法又去到autologin页面,再登录跳回来时便不再加载index页面的ttf文件,但其实ttf文件没有加载到
主页页面跳转到自动登录页面前,浏览器取消了对字体文件下载的接收,但浏览器认为字体已经缓存下来,页面跳转回来后不再请求之前被取消下载的字体文件。所以这问题应该是Safari缓存机制的BUG所致
byOneselfShare(); //判断是否为游客自行分享的
————————until.js
function 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...
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。