网站被uc手机浏览器自转码,如何才能避免?

iorisgzh 2019-05-09 01:20:28
最近遇到个棘手的问题,请求帮助解决,

网站在uc手机浏览器中 被浏览器默认强制的自转码,
不仅导航栏目被强制折叠,很多图片不显示,部分错位,样子难看
部分JavaScript失效,

<meta http-equiv="Cache-Control" content="no-transform " />
<meta http-equiv="Cache-Control" content="no-siteapp" />
<meta name="applicable-device" content="pc,mobile">
<meta name="renderer" content="ie-comp">
<meta name="viewport" content="width=device-width,height=device-height,inital-scale=1.0,maximum-scale=1.0,user-scalable=no;">


这些加上也不起作用

网站模板是自适应的,手机端有很好的手机端的界面,

曾把手机专用模板覆盖了pc模板(也就是pc端访问也是手机模板) 仅维持了1天 不到24小时,uc就再次将自转码了,

我已无语了,
...全文
2098 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
shenhui110119 2020-09-14
  • 打赏
  • 举报
回复
看到一个小说站是这样防UC、夸克转码的,他的下一章链接是空的“<a href="">下一章</a>”。然后利用js的滚动事件修改 href 属性。

js代码如下:

在html页面声明一下几个变量。



var shortid = "xx", articleid = "xx", next_chapterid = "xx";//xx填写你自己的ID

//下一章的url判断
if (next_chapterid !== "") {//判断是否有下一章
var person = {
tid: shortid,
eid: articleid,
nextid: next_chapterid,
Namepageid: function() {
return "/" + this.tid + "/" + this.eid + "/" + this.nextid + ".html"
}
}
} else {//没有直接回目录
var person = {
tid: shortid,
eid: articleid,
Namepageid: function() {
return "/" + this.tid + "/" + this.eid + "/"
}
}
}
//下一章的url判断end

//滚动事件修改 href 属性
var url = person.Namepageid();
if (window.screen.availHeight >= document.body.clientHeight) {//没有滚动条直接修改href 属性
document.getElementById("next").setAttribute("href", ""+ url)
} else {
var tur = true;
function scrollBottomOrTop() {
var clients = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
var scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;
var wholeHeight = document.documentElement.scrollHeight;
if (clients + scrollTop >= wholeHeight - 500) {//滚动条距离底部500px时执行修改href 属性
document.getElementById("next").setAttribute("href", ""+ url)
}
if (scrollTop >= 300) {//文章内容向上滚动300px时修改href 属性
document.getElementById("next").setAttribute("href", ""+ url)
}
tur = true
}
window.onscroll = function() {//500毫秒只执行一次
if (tur) {
setTimeout(scrollBottomOrTop, 500);
tur = false
} else {}
}
}
//滚动事件修改 href 属性end


希望对你有帮助。
shenhui110119 2020-09-13
  • 打赏
  • 举报
回复
看到一个小说站是这样防UC转码的,他的下一章链接是空的“<a href="">下一章</a>”。然后利用js的滚动事件修改 href 属性。

js代码如下:

要在html页面声明一下的几个变量。

//下一章的url判断
if (next_chapterid !== "") {//判断是否有下一章
var person = {
tid: shortid,
eid: articleid,
nextid: next_chapterid,
Namepageid: function() {
return "/" + this.tid + "/" + this.eid + "/" + this.nextid + ".html"
}
}
} else {//没有直接回目录
var person = {
tid: shortid,
eid: articleid,
Namepageid: function() {
return "/" + this.tid + "/" + this.eid + "/"
}
}
}
//下一章的url判断end

//滚动事件修改 href 属性
var url = person.Namepageid();
if (window.screen.availHeight >= document.body.clientHeight) {//没有滚动条直接修改href 属性
document.getElementById("next").setAttribute("href", ""+ url)
} else {
var tur = true;
function scrollBottomOrTop() {
var clients = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
var scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;
var wholeHeight = document.documentElement.scrollHeight;
if (clients + scrollTop >= wholeHeight - 500) {//滚动条距离底部500像素时执行修改href 属性
document.getElementById("next").setAttribute("href", ""+ url)
}
if (scrollTop >= 300) {//文章内容向上滚动300像素时修改href 属性
document.getElementById("next").setAttribute("href", ""+ url)
}
tur = true
}
window.onscroll = function() {//500毫秒只执行一次
if (tur) {
setTimeout(scrollBottomOrTop, 500);
tur = false
} else {}
}
}
//滚动事件修改 href 属性end

大概就是这样,希望他的这个思路对你有帮助。

87,993

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧