脚本制作程序编写js获得url中?后的主要参数,修补移动版没法转换到电脑上版的BUGJager · 五月26日 · 20" />

全国咨询热线:18720358503

js获得url中?后的主要参数,修补移动版没法转换

类别:行业新闻 发布时间:2021-04-10 浏览人次:

脚本制作程序编写 企业网站建设 資源共享 帮我留言板留言 有关

' next-text='' view="0" >脚本制作程序编写js获得url中?后的主要参数,修补移动版没法转换到电脑上版的BUGJager · 五月26日 · 2017年JS转换主题风格 · uaredirect · 移动主题风格转换 2753次已读

昨日,公布了《极致完成移动主题风格在360网站卫士缓存文件开全状况下的转换》一文,根据JS完成了主题风格在手机端浏览时的全自动转换,最终提及了能够在电脑上版和移动版的footer里边再加手动式转换连接,完成手动式版本号转换作用。

今早发觉,电脑上版转换到移动版是一切正常了,可是移动版转换到电脑上版,JS可能再度工作中uaredirect.js会再度做UA分辨,随后由又跳回了电脑上版! 换句话说,手机上上访问没法手动式转换到电脑上版,来看还得再次瞎折腾!

因此,想起一个方法,给移动版的转换连接携带一个主要参数,再改动 uaredirect.js,当发觉连接后边带了特定主要参数时,就立即return,而已不开展UA分辨,防止再度自动跳转的难堪。。。

说干就干,在oschina寻找以下2中获得url后边主要参数的方式:

//获得恳求url中主要参数的值:
/*方式一:主要参数值中沒有相当于号(“=”)*/
 function getUrlRequest() {
 var url = location.search; //获得url中"?"符后的字串
 var theRequest = new Object();
 if (url.indexOf("?") != -1) {
 var str = url.substr(1);
 if (str.indexOf(" ") != -1) {
 strs = str.split(" 
 for (var i = 0; i strs.length; i++) {
 theRequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]);
 } else {
 theRequest[str.split("=")[0]] = unescape(str.split("=")[1]);
 return theRequest;
/*方式二:主要参数值中有相当于号的状况(“=”)*/
 function getUrlRequest(){
 var url = location.search; //获得url中"?"符后的字串
 var theRequest = new Object();
 if (url.indexOf("?") != -1) {
 var str = url.substr(1);
 if (str.indexOf(" ") != -1) {
 strs = str.split(" 
 for (var i = 0; i strs.length; i++) {
 theRequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]);
 } else {
 var key = str.substring(0,str.indexOf("="));
 var value = str.substr(str.indexOf("=")+1);
 theRequest[key] = decodeURI(value);
 return theRequest;
 }

依据本人爱好,张戈挑选了第二种,随后以下改动uaredirect.js

//获得url后边主要参数
function getUrlRequest(){
 var url = location.search;
 var theRequest = new Object();
 if (url.indexOf("?") != -1) {
 var str = url.substr(1);
 if (str.indexOf(" ") != -1) {
 strs = str.split(" 
 for (var i = 0; i strs.length; i++) {
 theRequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]);
 } else {
 var key = str.substring(0,str.indexOf("="));
 var value = str.substr(str.indexOf("=")+1);
 theRequest[key] = decodeURI(value);
 return theRequest;
function uaredirect(f) {
 var canshu=getUrlRequest();
 try {
 if (canshu["type"] == "pc") { //当检验到url后边带了type=pc主要参数时,终止实行.
 return
 var b = false;
 if (arguments[1]) {
 var e = window.location.host;
 var a = window.location.href;
 if (isSubdomain(arguments[1], e) == 1) {
 f = f + "/#m/" + a;
 b = true
 } else {
 if (isSubdomain(arguments[1], e) == 2) {
 f = f + "/#m/" + a;
 b = true
 } else {
 f = a;
 b = false
 } else {
 b = true
 if (b) {
 var c = window.location.hash;
 if (!c.match("fromapp")) {
 if ((navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i))) {
 location.replace(f)
 } catch(d) {}
function isSubdomain(c, d) {
 this.getdomain = function(f) {
 var e = f.indexOf("://");
 if (e 0) {
 var h = f.substr(e + 3)
 } else {
 var h = f
 var g = /^www\./;
 if (g.test(h)) {
 h = h.substr(4)
 return h
 if (c == d) {
 return 1
 } else {
 var c = this.getdomain(c);
 var b = this.getdomain(d);
 if (c == b) {
 return 1
 } else {
 c = c.replace(".", "\\.");
 var a = new RegExp("\\." + c + "$");
 if (b.match(a)) {
 return 2
 } else {
 return 0
};​

最终,在移动论坛版主题的footer里边再加以下编码:

 !--登录-- 
 a title="登录" href="/wp-login.php" 登录 /a nbsp;
 !--底端转换连接-- 
 ?php wp_reset_query();if ( is_home()){ ? 
 a title="电脑上版" href="/?type=pc" 电脑上版 /a 
 ?php } ? 

 ?php wp_reset_query();if ( is_single()){ ? 
 ?type=pc" 电脑上版 /a 
 ?php } ? 
 !--归类页底端转换连接-- 
 ?php wp_reset_query();if ( is_category()){ ? 
 a title="电脑上版" href="/ ?php echo the_category_slug(); ? ?type=pc" 电脑上版 /a 
 ?php } ? 
 !--网页页面底端转换连接-- 
 ?php if ( is_page()){ ? 
 a title="电脑上版" href="/ ?php echo the_slug(); ? ?type=pc" 电脑上版 /a 

Ps:编码里加入登录连接的缘故,是由于WordPress Mobile Pack软件会强制性变换后台管理款式,很不和睦!因此改为了登录到PC版后台管理的连接,若手机上主题风格已存有登录连接的,删掉更换就可以。

最后,处理了移动版没法转换到电脑上版的BUG~!

 

全新填补:忽然发觉了uaredirect.js中实际上早已内置了终断体制:#fromapp 

因此,要是在转换连接后边再加 #fromapp 便可以免js自动跳转到移动版了!

冏。。。那上边的內容全是瞎忙活活了,仅作参照,仅作参照。。。。

假如,你要换为别的终断主要参数,能够改动百度搜索出示的uaredirect.js,将编码中的fromapp 改为你需要的标志就可以,例如张戈就改动变成pc,因此手中机上要是浏览 p> 18 条答复
Jager 2014-5-26 · 22:34

下一篇:没有了

推荐阅读

js获得url中?后的主要参数,修补移动版没法转换

脚本制作程序编写企业网站建设資源共享帮我留言板留言有关' next-text='' view="0" >脚本制作程序编写js获得url中?后的主要参数,修补移动版没法转换到电脑上版的BUGJager · 五月26日 · 20...

2021-04-10
淡香水知名品牌有什么(全球顶尖淡香水知名品牌

首页 > 知名品牌信息内容 > 知名品牌排名榜 > 淡香水知名品牌有什么(全球顶尖淡香水知名品牌全集)淡香水知名品牌有什么(全球顶尖淡香水知名品牌全集)编写: 杨冬海 :59 阅读文章 125...

2021-04-10
免费建网站的步骤-深圳营销类网站内链如何做优

许多情况下大家发觉一些搜索引擎排名挺好的却沒有外部链接,外部链接沒有即使了,友情链接甚么的也没见到有,那为何还能排行靠前,这一情况下就需要留意这种网站有木有内部链...

2021-04-10
企盟个人信用定级

我国发展趋势改革创新委、老百姓金融机构、中间编办下达的《有关内行政管理方法事宜中应用个人信用纪录和个人信用汇报的多个建议》中要求:在政府部门购置、招标会招投标、行...

2021-04-10
公众号背景图怎么制作-凡科抠图照片调色:青色调

Photoshop相片调色:青色彩MM相片互连网 公布 创作者:佚名 我想评价本实例教程简易详细介绍相片的调色方式。调色的情况下先订制好基原色,随后渐渐地去修补相片的关键点及明暗...

2021-04-10
广州市水舞音响价钱油進口环境保护加工工艺品

div edf40wrjww2cp:jianjie /div /div 商品名字: INEOS环境保护溶剂油 KL-03广州市水舞音响油特供 供货深圳市水舞音响油進口环境保护加工工艺品添充油骆生 深圳市水舞音响油特供 东莞市水舞音箱...

2021-04-10
X

400-8700-61718720358503
企业邮箱2639601583@qq.com
官方微信