想到什么写什么
######
//获取地址栏参数
function getParam(name) { var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if (r!=null) return unescape(r[2]); return null; }
#######
//阻止事件传播
$(document).on('click','.ds-pop *,.ds-pop',function (e) { e.stopPropagation(); })
########
//点击元素以外地方元素隐藏
$('body').on('click',function (e) { var evt = e.srcElement||e.target; if(evt.className=='welcomeTxt'||evt.className=='select')return; $('.select').hide() })
######
react css_modules 在使用css-loader时,在引入外部组件时,由于外部组件class命名并没有使用css_module规则,
而css文件经过css-loader处理,所以导致样式不能正常引入。
--------
解决办法:css-loader处理规则改成只处理src文件夹中css文件。
include:src路径,
exclude:排除node_module文件后仍有此问题,未解决!!(不晓得为什么)
######
safari 时间转时间戳不支持 "-" 格式需替换成 "/" ,问题表现NAN
######
问题描述:ios wap页input调起输入键盘,布局被顶上去。
解决:
ios_weixin() { var u = navigator.userAgent; var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); if (isiOS) { // document.getElementsByTagName("input,textarea,select")[0].onBlur(function(){ setTimeout(function () { var scrollHeight = document.documentElement.scrollTop || document.body.scrollTop || 0; window.scrollTo(0, Math.max(scrollHeight - 1, 0)); }, 50); // }) } }
##############
深拷贝
function deepCopy(source){ let target = Array.isArray(source)?[]:{} if(source instanceof Date) target = new Date if(source instanceof RegExp) target = new RegExp console.log(target) for(var attr in source){ if(source.hasOwnProperty(attr)){ if(source[attr] instanceof Object){ target[attr] = deepCopy(source[attr]) }else{ target[attr] = source[attr] } } } return target }
#################
时间戳转时间格式
// 时间戳转换格式 formateDateTime:function(timestamp) { if(timestamp.toString().length == 10){ timestamp = parseInt(timestamp+'000'); } var date = new Date(timestamp); Y = date.getFullYear() + '-'; M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-'; D = (date.getDate() < 10 ? '0'+(date.getDate()) : date.getDate()) + ' '; h = (date.getHours() < 10 ? '0'+(date.getHours()) : date.getHours()) + ':'; m = (date.getMinutes() < 10 ? '0'+(date.getMinutes()) : date.getMinutes()); // s = (date.getSeconds() < 10 ? '0'+(date.getSeconds()) : date.getSeconds()) return Y+M+D+h+m; }
###########################
文本安全css样式,设置文本输入样式***或点
-webkit-text-security:disc;
text-security:disc;
#########################
# 解决IDEA下的terminal中文Unicode编码问题 \Git\etc\bash.bashrc
export LANG="zh_CN.UTF-8"
export LC_ALL="zh_CN.UTF-8"
#########################
promise.all 实现
Promise.all = function(data){ var arr = [] let promisesLength = data.length; return new Promise((resolve)=>{ for (let i of data){ Promise.resolve(i).then(res=>{ arr[data.indexOf(i)] = res if(index===promisesLength) resolve(arr) }) } }) }
#########################
防抖首次可立即执行
let debounce = function (function_, wait) { let flag = true; let first = true; let timer; return function (...argument) { if(timer) { clearTimeout(timer); } if (flag) { if(!timer) { function_(...argument); } flag = false; timer = setTimeout(function () { !first && function_(...argument); first = false; flag = true; }, wait); } }; };
节流首次立即执行
throttle = function (function_: Function, wait: number) { let flag: boolean = true; let timer: number | undefined; return function (...argument: any[]) { if (flag) { flag = false; function_(...argument); timer = setTimeout(function () { flag = true; clearTimeout(timer); }, wait); } }; };