svg类库
https://www.linuxidc.com/Linux/2015-02/113411.htm
十六进制颜色值的正则表达式
var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
/*RGB颜色转换为16进制*/
String.prototype.colorHex = function(){
var that = this;
var aColor = that.substring(4,that.length-1).split(",");
return ("00000" + (aColor[0] << 16 | aColor[1] << 8 | aColor[2]).toString(16)).slice(-6);
};
RGB颜色转换为16进制
String.prototype.colorHex = function() {
var that = this;
if(/^(rgb|RGB)/.test(that)) {
var aColor = that.replace(/(?:\(|\)|rgb|RGB)*/g, "").split(",");
var strHex = "#";
for(var i = 0; i < aColor.length; i++) {
var hex = Number(aColor[i]).toString(16);
if(hex === "0") {
hex += hex;
}
strHex += hex;
}
if(strHex.length !== 7) {
strHex = that;
}
return strHex;
} else if(regColor.test(that)) {
var aNum = that.replace(/#/, "").split("");
if(aNum.length === 6) {
return that;
} else if(aNum.length === 3) {
var numHex = "#";
for(var i = 0; i < aNum.length; i += 1) {
numHex += (aNum[i] + aNum[i]);
}
return numHex;
}
} else {
return that;
}
};
删除数组的某个元素
Array.prototype.indexOf = function (val) {
for (var i = 0; i < this.length; i++) {
if (this[i] == val) return i;
}
return -1;
};
Array.prototype.remove = function (val) {
var index = this.indexOf(val);
if (index > -1) {
this.splice(index, 1);
}
};
16进制输入框
<input type="text" name="color" id="pickerPaletteText" spellcheck="false" maxlength='6'>
js 中监听keyup 方法,获得输入的值,正则匹配输入内容,重新赋值
enter 是自动补位
禁止页面被选中的方法
css:
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
日期加减
function dateChange(num,date) {
if (!date) {
date = new Date();//没有传入值时,默认是当前日期
date = date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate();
}
date += " 00:00:00";//设置为当天凌晨12点
date = Date.parse(new Date(date))/1000;//转换为时间戳
date += (86400) * num;//修改后的时间戳
var newDate = new Date(parseInt(date) * 1000);//转换为时间
return newDate.getFullYear() + '-' + (newDate.getMonth() + 1) + '-' + newDate.getDate();
}
日期格式化
function formatDate (date, fmt) {
date = new Date(date * 1000);
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
}
var o = {
'M+': date.getMonth() + 1,
'd+': date.getDate(),
'h+': date.getHours(),
'm+': date.getMinutes(),
's+': date.getSeconds()
};
for (var k in o) {
if (new RegExp(`(${k})`).test(fmt)) {
var str = o[k] + '';
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str));
}
}
return fmt;
}
function padLeftZero (str) {
return ('00' + str).substr(str.length);
}
获取地址后的参数
1.
function getQueryString(field, url) {
var href = url ? url : window.location.href;
var reg = new RegExp('[?&]' + field + '=([^&#]*)', 'i');
var string = reg.exec(href);
var Request = new UrlSearch(); //实例化
if(Request.tem == 6){// 自定义模板
return 10;
}
return string ? string[1] : null;
};
2.
// 解析浏览器url携带参数
function UrlSearch() {
var name, value;
var str = location.href; //取得整个地址栏
var num = str.indexOf("?")
str = str.substr(num + 1); //取得所有参数 stringvar.substr(start [, length ]
var arr = str.split("&"); //各个参数放到数组里
for(var i = 0; i < arr.length; i++) {
num = arr[i].indexOf("=");
if(num > 0) {
name = arr[i].substring(0, num);
value = arr[i].substr(num + 1);
this[name] = value;
}
}
}
var Request=new UrlSearch(); //实例化