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 相关文章推荐
css3强大的动画效果animate使用说明及浏览器兼容介绍
Jan 09 HTML / CSS
8款精美的CSS3表单设计(登录表单/下拉选择/按钮附演示及源码)
Feb 04 HTML / CSS
CSS Grid布局教程之浏览器开启CSS Grid Layout汇总
Dec 30 HTML / CSS
CSS3 创建网页动画实现弹跳球动效果
Oct 30 HTML / CSS
探究 canvas 绘图中撤销(undo)功能的实现方式详解
May 17 HTML / CSS
HTML5印章绘制电子签章图片(中文英文椭圆章、中文英文椭圆印章)
Jun 03 HTML / CSS
html5指南-2.如何操作document metadata
Jan 07 HTML / CSS
用HTML5制作数字时钟的教程
May 11 HTML / CSS
HTML5中原生的右键菜单创建方法
Jun 28 HTML / CSS
Canvas制作的下雨动画的示例
Mar 06 HTML / CSS
amazeui模态框弹出后立马消失并刷新页面
Aug 19 HTML / CSS
AmazeUI的JS表单验证框架实战示例分享
Aug 21 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
php防攻击代码升级版
2010/12/29 PHP
使用XHProf查找PHP性能瓶颈的实例
2017/12/13 PHP
javascript静态的url如何传递
2007/05/03 Javascript
jQuery 连续列表实现代码
2009/12/21 Javascript
JS setCapture 区域外事件捕捉
2010/03/18 Javascript
javascript 获取HTML DOM父、子、临近节点
2014/06/16 Javascript
js实现汉字排序的方法
2015/07/23 Javascript
domReady的实现案例
2016/11/23 Javascript
bootstrap table使用入门基本用法
2017/05/24 Javascript
简单谈谈CommonsChunkPlugin抽取公共模块
2017/12/31 Javascript
Angular @HostBinding()和@HostListener()用法
2018/03/05 Javascript
layer.open 子页面弹出层向父页面传输数据的例子
2019/09/26 Javascript
axios如何取消重复无用的请求详解
2019/12/15 Javascript
vue中如何自定义右键菜单详解
2020/12/08 Vue.js
python调用短信猫控件实现发短信功能实例
2014/07/04 Python
Python itertools模块详解
2015/05/09 Python
python树莓派红外反射传感器
2019/01/21 Python
使用pytorch 筛选出一定范围的值
2020/06/28 Python
使用SimpleITK读取和保存NIfTI/DICOM文件实例
2020/07/01 Python
python语音识别指南终极版(有这一篇足矣)
2020/09/09 Python
西班牙创意礼品和小工具网上商店:Curiosite
2016/07/26 全球购物
Lou & Grey美国官网:主打舒适性面料服饰
2017/12/21 全球购物
100%植物性、有机、即食餐:Sakara Life
2018/10/25 全球购物
Prototype中如何为一个元素添加一个方法
2014/12/08 面试题
怎样在 Applet 中建立自己的菜单(MenuBar/Menu)?
2012/06/20 面试题
简单的JAVA编程面试题
2013/03/19 面试题
机电专业体育教师求职信
2013/09/21 职场文书
校本教研工作方案
2014/01/14 职场文书
综合实践教学反思
2014/01/31 职场文书
行政办公室岗位职责
2014/03/18 职场文书
小学生演讲稿大全
2014/04/25 职场文书
5s标语大全
2014/06/23 职场文书
2014年卫生工作总结
2014/11/27 职场文书
企业宣传语大全
2015/07/13 职场文书
CSS3实现三角形不断放大效果
2021/04/13 HTML / CSS
SQL Server中使用判断语句(IF ELSE/CASE WHEN )案例
2021/07/07 SQL Server