js常用函数的封装
1. 获取url中的参数函数
function filterUrl() { var url = location.search; //获取url中"?"符后的字串 var theRequest = new Object(); if (url.indexOf("?") != -1) { var str = url.substr(1); strs = str.split("&"); for (var i = 0; i < strs.length; i++) { theRequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]); } } return theRequest; }
2. 获取当前url中的指定参数值
//获取当前url中的指定参数 function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象 var r = location.search.substr(1).match(reg); //匹配目标参数 if (r != null) { var ret = r[2]; try { ret = decodeURIComponent(ret); } catch (e) { ret = unescape(ret); } return ret; } return null; //返回参数值 }
3. 获取当前url中指定的hash值
//获取当前hash参数 function getHashParam(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象 var r = location.hash.substr(1).match(reg); //匹配目标参数 if (r != null) { var ret = r[2]; try { ret = decodeURIComponent(ret); } catch (e) { ret = unescape(ret); } return ret; } return null; //返回参数值 }
4.是否支持css动画
//是否支持css动画 function checkCssAnimation() { var styles = document.createElement('div').style; var animations = ['animation', 'webkitAnimation', "msAnimation", 'MozAnimation', '-moz-animation', '-webkit-animation']; for (var i = 0, len = animations.length; i < len; i++) { if (animations[i] in styles) { return true; } } return false; }
5. 终端验证mobile或者pc
//终端验证 function getPlatform() { var Agents = ["Android", "iPhone", "SymbianOS", "Windows Phone", "iPad", "iPod"]; var flag = "pc"; for (var v = 0, len = Agents.length; v < len; v++) { if (navigator.userAgent.indexOf(Agents[v]) > 0) { flag = "mobile"; break; } } return flag; }
6. 手机系统android或者ios或者others(如平板)
//手机系统 function getSystem() { var ua = navigator.userAgent.toLowerCase(); if (ua.indexOf("android") != -1) return "android"; if (ua.indexOf("iphone") != -1) return "ios"; return "others"; }
7. 是否微信浏览器环境(公众号)
//是否微信浏览器(公众号) function isWX() { if (/(micromessenger)\/([\w\.]+)/i.test(navigator.userAgent) && !/miniprogram/i.test(navigator.userAgent)) { return true; } return false; }
8. 是否小程序环境
//是否小程序 function isMiniprogram() { if (/(micromessenger)\/([\w\.]+)/i.test(navigator.userAgent) && /miniprogram/i.test(navigator.userAgent)) { return true; } return false; }
浙公网安备 33010602011771号