HTML静态页面获取url参数和UserAgent的实现


Posted in HTML / CSS onAugust 05, 2022

前言

接技术支持小伙伴信:有用户反馈app在华为设备上下载不了,以为是服务器覆盖的范围不够或服务器挂了,直到另一个客服同事发来一个录屏,基本知道原因,从而说明了反馈问题时,描述和材料对问题的分析与解决影响是巨大的。

原因

由于设备浏览器的useragent是电脑因此,下载页面就是电脑的页面,能下载的是电脑的安装文件。但在微信中却是能够正常显示的,但微信中“无法下载”,因此引导打开了浏览器,这样就是用户出现的“下载问题”

解决

在这个静态的下载页面url上带个参数,从微信引导浏览器打开时候,根据这个参数来展现界面,不已useragent为依据即可避免这个事情。

1、静态页面获取url的参数

有如下几种方法

function getURLParameter(name) { 
	return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search)||[,""])[1].replace(/\+/g, '%20'))||null; 
}
function GetQueryString(name) {
   var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)","i");
   var r = window.location.search.substr(1).match(reg);
   if (r!=null) return unescape(r[2]); return null;
}

亲测上面两个函数,皆可。

2、取useragent的值

直接使用:navigator.userAgent

document.getElementById(“userAgentDiv”).innerHTML = navigator.userAgent;

3、测试页面

完整的html测试页面代码如下

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>参数与Ua测试(runoob.com)</title>
</head>
<body>
<script>
function getURLParameter(name) { 
	return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search)||[,""])[1].replace(/\+/g, '%20'))||null; 
}
function GetQueryString(name) {
   var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)","i");
   var r = window.location.search.substr(1).match(reg);
   if (r!=null) return unescape(r[2]); return null;
}
function showUserAgent() {
   document.getElementById("userAgentDiv").innerHTML = navigator.userAgent;
}
document.write("param of os<br>");
document.write("1 GetQueryString:");
document.write(GetQueryString("os"));
document.write("<br> 2 getURLParameter: ");
document.write(getURLParameter("os"));

document.write("<h1>ua:");
document.write(navigator.userAgent);
document.write("</h1>");
</script>
</body>
</html>

当访问file:///C:/Users/R/Desktop/param.html时结果为:

HTML静态页面获取url参数和UserAgent的实现

当访问file:///C:/Users/R/Desktop/param.html?os=Android 时结果为:

HTML静态页面获取url参数和UserAgent的实现

这两个问题解决了,那个页面展现问题也随着解决了。当然商店是需要上架的,但市场上大部分平板以及一些定制机,这个ua一般是电脑,所以这个可以极大的覆盖所有“页面”导致的下载问题了。

 到此这篇关于HTML静态页面获取url参数和UserAgent的实现的文章就介绍到这了,更多相关HTML获取url参数和UserAgent内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
详解CSS样式中的 !important * _ 符号
Mar 09 HTML / CSS
CSS3 box-sizing属性
Apr 17 HTML / CSS
html5应用缓存_动力节点Java学院整理
Jul 13 HTML / CSS
Html5实现如何在两个div元素之间拖放图像
Mar 29 HTML / CSS
HTML5+Canvas+CSS3实现齐天大圣孙悟空腾云驾雾效果
Apr 26 HTML / CSS
纯HTML5+CSS3制作生日蛋糕(代码易懂)
Nov 16 HTML / CSS
HTML5实现文件断点续传的方法
Jan 04 HTML / CSS
使用phonegap克隆和删除联系人的实现方法
Mar 31 HTML / CSS
HTML table 表格边框的实现思路
Oct 12 HTML / CSS
AmazeUI 面板的实现示例
Aug 17 HTML / CSS
使用HTML+Css+transform实现3D导航栏的示例代码
Mar 31 HTML / CSS
Html5通过数据流方式播放视频的实现
Apr 27 HTML / CSS
CSS使用Flex和Grid布局实现3D骰子
Aug 05 #HTML / CSS
css中:last-child不生效的解决方法
Aug 05 #HTML / CSS
CSS浮动引起的高度塌陷问题
Aug 05 #HTML / CSS
使用CSS实现六边形的图片效果
Aug 05 #HTML / CSS
el-form每行显示两列底部按钮居中效果的实现
Aug 05 #HTML / CSS
纯CSS打字动画的实现示例
Aug 05 #HTML / CSS
新的CSS 伪类函数 :is() 和 :where()示例详解
You might like
PHP4与PHP5的时间格式问题
2008/02/17 PHP
深入解析php之sphinx
2013/05/15 PHP
Laravel模型间关系设置分表的方法示例
2018/04/21 PHP
对textarea框的代码调试,而且功能上使用非常方便,酷
2006/06/30 Javascript
javascript 尚未实现错误解决办法
2008/11/27 Javascript
Js 回车换行处理的办法及replace方法应用
2013/01/24 Javascript
jQuery的live()方法对hover事件的处理示例
2014/02/27 Javascript
Javascript仿PHP $_GET获取URL中的参数
2014/05/12 Javascript
用js一次改变多个input的readonly属性值的方法
2014/06/11 Javascript
js使用心得分享
2015/01/13 Javascript
Nodejs学习笔记之测试驱动
2015/04/16 NodeJs
JavaScript中的splice()方法使用详解
2015/06/09 Javascript
jquery validation验证表单插件
2017/01/07 Javascript
原生JavaScript实现Tooltip浮动提示框特效
2017/03/07 Javascript
详解AngularJS1.6版本中ui-router路由中/#!/的解决方法
2017/05/22 Javascript
简单谈谈原生js的math对象
2017/06/27 Javascript
基于jQuery实现手风琴菜单、层级菜单、置顶菜单、无缝滚动效果
2017/07/20 jQuery
ES6关于Promise的用法详解
2018/05/07 Javascript
微信小程序自定义多选事件的实现代码
2018/05/17 Javascript
BootStrap中的模态框(modal,弹出层)功能示例代码
2018/11/02 Javascript
深入理解 JS 垃圾回收
2019/06/03 Javascript
基于 Vue 的 Electron 项目搭建过程图文详解
2020/07/22 Javascript
JS实现按比例缩小图片宽高
2020/08/24 Javascript
Vue父子组件传值的一些坑
2020/09/16 Javascript
Python使用crontab模块设置和清除定时任务操作详解
2019/04/09 Python
HTML5之消息通知的使用(Web Notification)
2018/10/30 HTML / CSS
一套C#面试题
2013/10/09 面试题
省优秀教师事迹材料
2014/01/30 职场文书
竞选团支书演讲稿
2014/04/28 职场文书
官僚主义现象查摆问题整改措施
2014/10/04 职场文书
离婚协议书范本(通用篇)
2014/11/30 职场文书
自我检讨报告
2015/01/28 职场文书
筑梦中国心得体会
2016/01/18 职场文书
纪念建国70周年演讲稿
2019/07/19 职场文书
话题作文之生命的旋律
2019/12/17 职场文书
一文搞懂Python Sklearn库使用
2021/08/23 Python