javascript常用的工具函数(三)
2024-4-7 23:23:48发布次查看发布人:
javascript常用的工具函数(三)获取当前点击事件的object对象function getevent() {
if (document.all) {
return window.event; //如果是ie
}
func = getevent.caller;
while (func != null) {
var arg0 = func.arguments[0];
if (arg0) {
if ((arg0.constructor == event || arg0.constructor == mouseevent) ||
(typeof(arg0) == object && arg0.preventdefault && arg0.stoppropagation)) {
return arg0;
}
}
func = func.caller;
}
return null;
}
字符串截取方法function getcharacterlength(charstr, cutcount) {
if (charstr == null || charstr == ) return ;
var totalcount = 0;
var newstr = ;
for (var i = 0; i < charstr.length; i++) {
var c = charstr.charcodeat(i);
if (c 0) {
totalcount++;
} else {
totalcount += 2;
}
if (totalcount >= cutcount) {
newstr += charstr.charat(i);
break;
} else {
newstr += charstr.charat(i);
}
}
return newstr;
}
js弹出新窗口全屏function alertnewwindow() {
var tmp = window.open(about:blank, , fullscreen=1)
tmp.moveto(0, 0);
tmp.resizeto(screen.width + 20, screen.height);
tmp.focus();
tmp.location.href = //www.che168.com/pinggu/eva_ + msgresult.message[0] + .html;
var config_ = left=0,top=0,width= + (window.screen.width) + ,height= + (window.screen.height);
window.open(//www.che168.com/pinggu/eva_ + msgresult.message[0] + .html, winhanle, config_);
//模拟form提交打开新页面
var f = document.createelement(form);
f.setattribute(action, //www.che168.com/pinggu/eva_ + msgresult.message[0] + .html);
f.target = _blank;
document.body.appendchild(f);
f.submit();
}
js判断浏览器function judgebrowser() {
if (document.all) {
alert(ie浏览器);
} else {
alert(非ie浏览器);
}
if (!!window.activexobject) {
alert(ie浏览器);
} else {
alert(非ie浏览器);
}
//判断是ie几
var isie = !!window.activexobject;
var isie6 = isie && !window.xml = isie && !!document.documentmode;
var isie7 = isie && !isie6 && !isie8;
if (isie) {
if (isie6) {
alert(ie6);
} else if (isie8) {
alert(ie8);
} else if (isie7) {
alert(ie7);
}
}
}
js执行计时器function implementtimer() {
var timestart = new date().gettime();
var timesend = new date().gettime();
console.log(timesend - timestart);
document.getelementbyid(time).innerhtml = timesend - timestart;
}
js写cookie
function setcookie(name, value, expires, path, domain) {
if (!expires) expires = -1;
if (!path) path = /;
var d = + name + = + value;
var e;
if (expires < 0) {
e = ;
} else if (expires == 0) {
var f = new date(1970, 1, 1);
e = ;expires= + f.toutcstring();
} else {
var now = new date();
var f = new date(now.gettime() + expires * 1000);
e = ;expires= + f.toutcstring();
}
var dm;
if (!domain) {
dm = ;
} else {
dm = ;domain= + domain;
}
document.cookie = name + = + value + ;path= + path + e + dm;
}
js读cookiefunction readcookie(name) {
var nameeq = name + =;
var ca = document.cookie.split(;);
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charat(0) == ) c = c.substring(1, c.length);
if (c.indexof(nameeq) == 0) {
return decodeuricomponent(c.substring(nameeq.length, c.length))
}
}
return null
}
js加载到顶部loadjsfunction loadjs(url, fn) {
var ss = document.getelementsbyname(script),
loaded = false;
for (var i = 0, len = ss.length; i < len; i++) {
if (ss[i].src && ss[i].getattribute(src) == url) {
loaded = true;
break;
}
}
if (loaded) {
if (fn && typeof fn != undefined && fn instanceof function) fn();
return false;
}
var s = document.createelement(script),
b = false;
s.setattribute(type, text/javascript);
s.setattribute(src, url);
s.onload = s.onreadystatechange = function() {
if (!b && (!this.readystate || this.readystate == loaded || this.readystate == complete)) {
b = true;
if (fn && typeof fn != undefined && fn instanceof function) fn();
}
};
document.getelementsbytagname(head)[0].appendchild(s);
}
js绑定事件function bindevent(objid, eventtype, callback) { //适用于任何浏览器的绑定
var obj = document.getelementbyid(objid);
if (obj.addeventlistener) {
obj.addeventlistener(eventtype, callback, false);
} else if (window.attachevent) {
obj.attachevent(on + eventtype, callback);
} else {
obj[on + eventtype] = callback;
}
}
js添加script标签function jsload(args) {
s = document.createelement(script);
s.setattribute(type, text/javascript);
s.setattribute(src, args.url);
s.onload = s.onreadystatechange = function() {
if (!s.readystate || s.readystate == loaded || s.readystate == complete) {
if (typeof args.callback == function) args.callback(this, args);
s.onload = s.onreadystatechange = null;
try {
s.parentnode && s.parentnode.removechild(s);
} catch (e) {}
}
};
document.getelementsbytagname(head)[0].appendchild(s);
}
该用户其它信息