//判断是否为IE浏览器。

function isIE(){

return (document.all && window.ActiveXObject && !window.opera) ? true : false;
}

//外部调用页面元素的onclick事件

function loadClick(){

if(isIE()){

document.getElementById('obj_id').click();
}else{
var evt = document.createEvent("MouseEvents");
evt.initEvent("click", true, true);
document.getElementById('obj_id').dispatchEvent(evt);
}

}

//短函数方便使用

function $G(id){
return document.getElementById(id);
}
function $GC(t){
return document.createElement_x(t);
}
function $GT(t){
return document.getElementsByTagName(t);
}
//依据相同的className得到元素数组
function $$(class) {
var el=[];
_el=document.getElementsByTagName('*');
for (var i=0; i<_el.length; i++){
if (_el[i].className == class){
el[el.length] = _el[i];
}
}
return el;
}
// 判断浏览器ie6还是ie7。
function isIe6Or7(){
var browser=navigator.appName
var b_version=navigator.appVersion
var version=b_version.split(";");
var trim_Version=version[1].replace(/[ ]/g,"");
if(browser=="Microsoft Internet Explorer" && trim_Version=="MSIE7.0"){
alert("IE 7.0");
}else if(browser=="Microsoft Internet Explorer" && trim_Version=="MSIE6.0"){
alert("IE 6.0");
}
}
// 去除字符串左右的空格。
String.prototype.trim = function(){
return this.replace(/(^\s*)|(\s*$)/g, '');
}
//去除字符串左边的空格。
String.prototype.trimLeft= function(){
return this.replace(/^\s*/g,"");
}
//去除字符串右边的空格。
String.prototype.trimRight = function(){
return this.replace(/\s*$/g,"");
}

// 替换全部字符串。

String.prototype.replaceAll = function(srcStr,desStr){
return this.replace(new RegExp(srcStr,"gm"),desStr))
}
//检查用户名是否由英文字母、数字以及下划线组成。
function checkUserName(s){
var patrn=/^(\w){1,50}$/;
if (patrn.exec(s)){
return true;
} else {
return false;
}
}
//判断输入是否是大于0的数字。
function isNumCheck(str){
if(str.match(/\D/)==null){
return true;
} else {
return false;
}
}
//检查座机或传真的电话格式
function checkTel(){
var re = /^(((\()?\d{2,4}(\))?[-(\s)*]){0,2})?(\d{7,8})$/;
if(re.test(document.getElementById("txtTel").value)){
alert("电话号码格式正确");
}else{
alert("错误的电话号码");
}
}
//判断输入是否是大于0的浮点型。
function isFloatCheck(str){
if(/^[0-9\.]+$/g.test(str)){
return true;
} else {
return false;
}
}
//检查是否有中文字符
function checkCN(str){
if(s.match(/[\u0391-\uFFE5]/ig)){
return true;
} else {
return false;
}
}
//判断e_mail格式是否正确。
function isEmailFormat(str){
if(/(\S)+[@]{1}(\S)+[.]{1}(\w)+/.test(str)){
if(str.indexOf('..')>-1){
return false;
}
str=str.trim();
var dbCheck = 0;
for (var i=0;i< str.length;i++){
if(str.charAt(i)==' ') return false;
if(str.charAt(i)=='@'){
if(dbCheck == 0) {
dbCheck = 1;
}else{
return false;
}
}
}
return true;
} else {
return false;
}
}
//得到页面元素的尺寸
function dimensions(el) {
return { width: el.offsetWidth, height: el.offsetHeight };
}
//得到鼠标当前的坐标
function mousePosition(e) {
return { x: e.clientX + document.documentElement.scrollLeft, y: e.clientY + document.documentElement.scrollTop };
}
var Json = {//把javascript的数组或对象转换成Json格式的字符串
toString: function(obj){
switch(typeof(obj)){
case 'string':
return '"' + obj.replace(/(["\\])/g, '\\$1') + '"';
case 'array':
return '[' + obj.map(Json.toString).join(',') + ']';
case 'object':
var string = [];
for (var property in obj) string.push(Json.toString(property) + ':' + Json.toString(obj[property]));
return '{' + string.join(',') + '}';
case 'number':
if (isFinite(obj)) break;
case false:
return 'null';
}
return String(obj);
},//把Json格式的字符串转换成javascript的数组或对象
uate: function(str, secure){
return ((typeof(str) != 'string') || (secure && !str.test(/^("(\\.|[^"\\\n\r])*?"|[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t])+?$/))) ? null : ('(' + str + ')');
}
}
//得到元素在荧幕上绝对真实的坐标位置
function getAbsoultePosition(el) {
var sLeft = 0, sTop = 0;
var isDiv = /^div$/i.test(el.tagName);
if (isDiv && el.scrollLeft) {
sLeft = el.scrollLeft;
}
if (isDiv && el.scrollTop) {
sTop = el.scrollTop;
}
var r = { x: el.offsetLeft - sLeft, y: el.offsetTop - sTop };
if (el.offsetParent) {
var tmp = getAbsoultePosition(el.offsetParent);
r.x += tmp.x;
r.y += tmp.y;
}
return r;
}
// IE 支持 ajax
if (window.ActiveXObject && !window.XMLHttpRequest) {
window.XMLHttpRequest=function() {
return new ActiveXObject((navigator.userAgent.toLowerCase().indexOf('msie 5') != -1) ? 'Microsoft.XMLHTTP' : 'Msxml2.XMLHTTP');
}
}
//封装ajax调用程序
function exeRequest(url, handle, v) {
var xmlHttp = new XMLHttpRequest();
xmlHttp.onreadystatechange = function() {
if(xmlHttp.readyState == 4){
if(xmlHttp.status == 200) {
handle(xmlHttp.responseText);
}
}
};
xmlHttp.open("post", url);
xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlHttp.send(v);
}
//关于函数绑定事件:
Function.prototype.BindForEvent = function() {
var __m = this, object = arguments[0], args = new Array();
for(var i = 1; i < arguments.length; i++){
args.push(arguments[i]);
}
return function(event) {
return __m.apply(object, [( event || window.event)].concat(args));
}
}
//关于函数绑定参数:
Function.prototype.Bind = function() {
var __m = this, object = arguments[0], args = new Array();
for(var i = 1; i < arguments.length; i++){
args.push(arguments[i]);
}
return function() {
return __m.apply(object, args);
}
}
//url跨平台调用js数据
function getJsData(url){
var _script = document.createElement("script");
_script.type = "text/javascript";
_script.language = "javascript";
_script[_script.onreadystatechange === null ? "onreadystatechange" : " = function(){
if(this.onreadystatechange){
if(this.readyState != "complete" && this.readyState != "loaded") {return;}
};
setTimeout(function(){_script.parentNode.removeChild(_script)},1000);
};
_script.src = url;
document.getElementsByTagName("head")[0].appendChild(_script);
}
//事件的初始化类
Event = {
//判断是否出发鼠标左键事件
isLeftClick: function(event) {
//在ie中event.button; 在firefox中event.which
return (((event.which) && (event.which == 1)) || ((event.button) && (event.button == 1)));
},
//得到鼠标的横坐标;ie不承认pageX和pageY属性 pointerX:
function(event) {
return event.pageX || (event.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft));
},
//得到鼠标的纵坐标
pointerY: function(event) {
return event.pageY || (event.clientY + (document.documentElement.scrollTop || document.body.scrollTop));
},
//停止事件
stop: function(event) {
if (event.preventDefault) {
event.preventDefault();//在fireFox中一定要
event.stopPropagation();
} else {
event.returnValue = false;//在ie中一定要
}
},
//增加事件
observe: function(element, name, observer) {
if(element.addEventListener) {
element.addEventListener(name, observer,false);//"false"在fireFox中一定要
} else if (element.attachEvent) {
element.attachEvent('on'+name, observer);
}
},
//清除事件
stopObserving: function(element, name, observer) {
if (element.removeEventListener) {
element.removeEventListener(name, observer, false);
} else if (element.detachEvent) {
element.detachEvent('on' + name, observer);
}
}
}