有些问题比较冷门,可有时候又不得不用,而有些知识点却总是记了又忘!与其每次都要去找,不如集中起来以后直接查阅:
1.一串数字或字母不会自动换行,撑开容器:
使用:word-wrap:break-word 强制换行
2.如果你想让你的列表,表格还是其他的奇偶有所差异,别在用%2去判断了,试试用CSS解决:
使用:nth-child() 选择器 nth-of-type() 选择器
nth-child(n)/nth-of-type(n): 表示父元素的第几个(特定)元素
nth-child(odd)/nth-of-type(odd): 表示奇数行
nth-child(even)/nth-of-type(even): 表示偶数行
nth-child(an + b)/nth-of-type(an + b): 表示周期的长度,n 是计数器(从 0 开始),b 是偏移值。
3.数组去重:[... new Set(array)] set本身是一个构造函数,用来生成Set数据结构。它类似于数组,但是成员是唯一的
4.随机取出数组中的元素:var index = Math.floor(Math.random()*数组名.length);
5.获取URL路径中的参数:
function getUrlParam(name){ var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if (r != null) return unescape(r[2]); return null; } getUrlParam
6.H5页面检测是否在小程序中打开,微信官方提供的小程序检测方式有失效的可能,本猿之前就遇到过这种情况,代码贴出如下:
<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script> <script> var ua = navigator.userAgent.toLowerCase(); if(ua.match(/MicroMessenger/i)=="micromessenger") { //ios的ua中无miniProgram,但都有MicroMessenger(表示是微信浏览器) wx.miniProgram.getEnv((res)=>{ if (res.miniprogram) { alert("在小程序里"); } else { alert("不在小程序里"); } }) }else{ alert('不在微信里'); } </script> wx.miniProgram.getEnv后在网上查找了很多方法,最终将可用方式贴在下面:
// 判断是否在微信小程序中,如果是则隐藏分享 function isWeiXin() { var ua = window.navigator.userAgent.toLowerCase(); if (ua.match(/MicroMessenger/i) == 'micromessenger') { return true; } else { return false; } } function ready() { if(!window.__wxjs_environment){ //非微信小程序 } else{ if(window.__wxjs_environment === 'miniprogram'){ //微信小程序 }else{ //非微信小程序 } } } if(isWeiXin()){ if (!window.WeixinJSBridge || !WeixinJSBridge.invoke) { document.addEventListener('WeixinJSBridgeReady', ready, false); } else { ready(); } }else{ //非微信环境 } miniprogram
7.父页面与iframe页面交互:
父页面:document.getElementById("iframe").contentWindow.变量名/方法;
iframe页面:parent.变量名/方法;
转载于:https://www.cnblogs.com/wangyuhui/p/10288171.html