暫存一些常用js函數(shù)
獲取url參數(shù)名
function GetQueryString(name) {
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r!=null) {
return unescape(r[2]);
} else {
return null;
}
}
用法:
- input:參數(shù)名
- output: url參數(shù)值挪蹭,如果沒有則返回null
修改url參數(shù)值
function changeURLArg(arg,arg_val){
var url = location.search;
var pattern = arg+'=([^&]*)';
var replaceText = arg + '=' + arg_val;
if(url.match(pattern)) {
var tmp = '/(' + arg + '=)([^&]*)/gi';
tmp = url.replace(eval(tmp), replaceText);
return tmp;
}else{
if(url.match('[\?]')) {
return url + '&'+replaceText;
} else {
return url + '?'+replaceText;
}
}
return url + '\n'+arg+'\n'+arg_val;
}
用法:
- input:參數(shù)名,修改值
- output: 所有參數(shù)的字符串
判斷是否為數(shù)字
function isInteger(str) {
var regu = /^[-]{0,1}[0-9]{1,}$/;
return regu.test(str);
}
用法:
- input:帶判斷字符串
- output: ture or false
為元素添加class(js原生)
export function addClass (el, className) {
if (hasClass(el, className)) {
return
}
let newClass = el.className.split(' ')
newClass.push(className)
el.className = newClass.join(' ')
}
用法:
- input:el 元素, className 待添加類名
- output: 無
判斷元素是否已有該class(js原生)
export function hasClass (el, className) {
let reg = new RegExp('(^|\\s)' + className + '(\\s|$)')
return reg.test(el.className)
}
用法:
- input:el 元素芙盘, className 類名
- output: true or false