欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

前端js方法集合解析

程序员文章站 2022-03-13 09:18:06
前端js方法集合【总结】 function texttojson(text){ return text.replace(/(\\|\\'|\\"|\n)/g,...

前端js方法集合【总结】

function texttojson(text){
return text.replace(/(\\|\\'|\\"|\n)/g,"\\\$1").replace(/\n/g,"n")
}//text转json用到的js方法
function datetocst(date){
if(date!="invalid date")
return date.tolocaledatestring().replace(/(\w+)\s*\/\s*(\w+)\/s*(\w+)/, "$1-$2-$3")+" "+date.totimestring().substr(0,8);
}//将date变成json能识别string格式,前端接收ajax返回的createtime变成date形式new date(json.createtime),

function datetocst(date){
date=string(new date(date.replace(/-/g,"/"))).substr(0,24).split(" ")
return date[0]+" "+date[1]+" "+date[2]+" "+date[4]+" cst "+date[3]
}//将cst格式的日期转化成js日期控件可以识别的方法

function jsonfuction(zu,ins,dx){if(ins!=null)zu.splice(dx,1,ins); else delete zu[dx];}
//jsonfuction(参数jsonlist,null,idex),表示从json数组里面删除一个项目,idex表示当前索引
//jsonfuction(参数jsonlist,newproject,idex),表示从json数组里面替换一个项目为newproject

function setcursorposition(ctrl, pos){
if(ctrl.setselectionrange){ctrl.focus();
ctrl.setselectionrange(pos,pos);}
else if (ctrl.createtextrange) {
var range = ctrl.createtextrange();
range.collapse(true);
range.moveend('character', pos);
range.movestart('character', pos);
range.select();}}//设置ctrl对象dom输入框当前的游标下标为pos

function shuzicheck(id){var i=id.selectionstart;var b=/\d/.test(id.value);id.value=id.value.replace(/\d/g,'');
if(b)setcursorposition(id,i-1);else setcursorposition(id,i)}//侦测输入是不是数字

function checkcontentnull(form){
var str="",inp=form.getelementsbytagname('input'),i;
for(i=0;i
if(inp[i].type!="hidden")
if(inp[i].alt!=undefined&&inp[i].alt!="")
if(trim(inp[i].value)==""||inp[i].value==$(form).find("input[alt='"+inp[i].alt+"']").eq(0).attr("placeholder")){
str+=inp[i].alt+" 不能为空\n"
}
};inp=form.getelementsbytagname('textarea');
for(i=0;i
if(inp[i].title!=undefined&&inp[i].title!="")
if(inp[i].value==""){
str+=inp[i].title+" 不能为空!\n"
}
};inp=form.getelementsbytagname('select');
for(i=0;i
if(inp[i].title!=undefined&&inp[i].title!="")
if(inp[i].selectedindex==0){
str+=inp[i].title+" 不能为空!\n"
}
}
if(str!=""){
alert(str);
return false;
}else return true;
}//检测输入框里面的内容是不是空,给input添加一个alt,并给alt一个前面的名字为标识,给textarea与select则用title作为标识


function getelementviewtop(element){
var actualtop = element.offsettop;
var current = element.offsetparent;
while (current !== null){actualtop += current. offsettop;
current = current.offsetparent;}
if (document.compatmode == "backcompat"){
var elementscrolltop=document.body.scrolltop;
} else {var elementscrolltop=document.documentelement.scrolltop; }
return actualtop-elementscrolltop;}//寻找position为absolute的元素离父元素如果没有则是body,离top的距离

function getelementviewleft(element){
var actualleft = element.offsetleft;
var current = element.offsetparent;
while (current !== null){
actualleft += current.offsetleft;
current = current.offsetparent;}
if (document.compatmode == "backcompat"){
var elementscrollleft=document.body.scrollleft;} else {
var elementscrollleft=document.documentelement.scrollleft;
}return actualleft-elementscrollleft;}//寻找相对元素离父元素的左边的距离

function getcookie(cookie){
var arrcookie = document.cookie.split("; ");
for (var i = 0; i < arrcookie.length; i++) {
var arr = arrcookie[i].split("=");
if (arr[0] == cookie) {
return arr[1];
}
}
}//<script>document.write(getcookie("checkcode"));</script>这样用js来提取cookie到页面的元素当text使用

function randomnum(min,max){
return math.round(math.random()*(max-min)+min)
}//生成一个随机数字,有最大最小范围区间


function banbubbler(e){
if (e || e.stoppropagation){e.stoppropagation();}
else {window.event.cancelbubble = true;}
}//取消事件冒泡泡

$(function() {
$("input[name='uploadfiles']").each(function(m) {
var fileobj,windowurl,dataurl,jqueryimg,extstart,ext,file=this;
(function(i){
$(file).on('change',function(){
jqueryimg = document.getelementsbyname("preview")[i];
extstart = $(this).val().lastindexof(".");if(extstart==-1)return false;
ext = $(this).val().substring(extstart).touppercase();
if (ext != ".jpg"&&ext != ".jpeg"&&ext != ".png"&&ext != ".gif"){
alert("不支持的文件类型!"+ext);console.log(extstart)
file=this.clonenode(false)
$(file).on('change',$._data(this,'events').change[0].handler);
this.parentnode.replacechild(file,this);
return false;
}
if ((navigator.appname == "microsoft internet explorer") && (document.documentmode < 10 || document.documentmode == undefined)) {
file.style.display="block";file.select();file.blur();dataurl = document.selection.createrange().text;
jqueryimg.style.filter = "progid:dximagetransform.microsoft.alphaimageloader(sizingmethod='scale',src=\"" + dataurl + "\")";
jqueryimg.src = 'data:image/gif;base64,r0lgodlhaqabaiaaap///waaach5baeaaaaalaaaaaabaaeaaaicraeaow==';
return false;
}
fileobj = $(file)[0];
windowurl = window.url || window.webkiturl;
if(fileobj.files[0].size>10485760){
alert("附件不能大于10m!");
file=this.clonenode(false)
$(file).on('change',$._data(this,'events').change[0].handler);
this.parentnode.replacechild(file,this);
return false;
}
if(fileobj && fileobj.files && fileobj.files[0]){
dataurl = windowurl.createobjecturl(fileobj.files[0]);
jqueryimg.src=dataurl;
}else{
dataurl = $(this).val();
jqueryimg.style.filter = "progid:dximagetransform.microsoft.alphaimageloader(sizingmethod=scale)";
jqueryimg.filters.item("dximagetransform.microsoft.alphaimageloader").src = dataurl;
}
});
})(m);
});
});//自动绑定每个页面的所有name=uploadfiles,type=file类型的,后面接一个name=preview的前端js方法集合解析,的所有图片上传事件,默认是不超过10m的大小

function chufa(element,str,events){
if(document.all) {element.click();}
else{var e=document.createevent(events)
e.initevent(str, true, true);
element.dispatchevent(e);}
}