1. 得到当前用户使用的浏览器的内核版本
function getExplorer(){
var browser = "";
var explorer = window.navigator.userAgent;
if (explorer.indexOf("MSIE") >= 0) { // ie10及以下
var b_version = navigator.appVersion;
var version = b_version.split(";");
version = version[1].replace(/[ ]/g, "");
version = version.split('MSIE')[1];
browser = 'IE:' + version;
} else if (explorer.indexOf("Firefox") >= 0) { // Firefox
browser = 'Firefox';
} else if (explorer.indexOf("Chrome") >= 0) { // Chrome
browser = 'Chrome';
} else if (explorer.indexOf("Opera") >= 0) { // Opera
browser = 'Opera';
} else if (explorer.indexOf("Safari") >= 0) { // Safari
browser = 'Safari';
} else if (explorer.indexOf("Trident/7.0") >= 0) { // IE11
browser = 'IE:10.0以上';
}
return browser;
}
2. 禁止鼠标右键操作
function click() {
if(event.button == 2 || event.button == 3) {
alert("禁止鼠标右键操作");
}
}
document.onmousedown = click;
3. 关闭当前窗口
function closeWin() {
window.close();
return false;
}
4. 打印当前页面
function printWin() {
window.print();
}
5. 获取 URL 中传递的参数
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;
}
6. 时间格式转换
/**
* 时间转换
* @param {Object} fmt
*/
Date.prototype.Format = function(fmt) {
var o = {
"M+": this.getMonth() + 1, //月份
"d+": this.getDate(), //日
"H+": this.getHours(), //小时
"m+": this.getMinutes(), //分
"s+": this.getSeconds(), //秒
"q+": Math.floor((this.getMonth() + 3) / 3), //季度
"S": this.getMilliseconds() //毫秒
};
if(/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
}
for(var k in o) {
if(new RegExp("(" + k + ")").test(fmt)) {
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
}
}
return fmt;
} 用法:
new Date().Format("yyyy-MM-dd HH:mm:ss") ==> 2017-12-31 18:23:12
7. 删除数组中的某一个数据
var arr = ['a', 'b', 'c', 'd', 'e'];
console.log("1-->" + arr);
arr.splice(2, 1);
console.log("2-->" + arr) 输出:
1-->a,b,c,d,e
2-->a,b,d,e
8. 转义字符转换为普通字符
/**
* 转意符换成普通字符
* @param {Object} str
*/
function escape2Html(str) {
var arrEntities = {
'lt':'<',
'gt':'>',
'nbsp':' ',
'amp':'&',
'quot':'"'
};
return str.replace(/&(lt|gt|nbsp|amp|quot);/ig, function(all, t) {
return arrEntities[t];
});
}
9. js 对数组进行中文排序
/**
* js 中文排序
* @param {Object} param1
* @param {Object} param2
*/
function compareFunction(param1, param2) {
param1 = param1.name;
param2 = param2.name;
return param1.localeCompare(param2, "zh");
} 用法:
dataArray为一个数组
dataArray.sort(compareFunction);
10. css 实现表格 table 两点之间添加斜线
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%"><line x1="0" y1="0" x2="100%" y2="100%" stroke="black" stroke-width="1"/></svg>');
11. DIV 实现类似 INPUT 的编辑操作
<div contenteditable="true"></div> 监听 DIV 中的值改变:
<div contenteditable="true" oninput="onDivChange(this);"></div>
function onDivChange(elem) {
console.log($(elem).text());
}
持续更新中(欢迎各位提出需要的功能)...