javascript常用tool.js
//跨浏览器添加事件 /* function addEvent(obj, type, fn){if(typeof obj.addEventListener != 'undefined'){obj.addEventListener(type, fn, false);}else if(typeof obj.attachEvent != 'undefined'){obj.attachEvent('on' + type, function(){fn.call(obj,window.event);});} } */ //浏览器监测 (function(){window.sys = {}; //外部访问浏览器信息对象;var ua = navigator.userAgent.toLowerCase(); //浏览器信息字符串var s; //浏览器名称加版本 (s = ua.match(/msie ([\d.]+)/)) ? sys.ie = s[1] :(s = ua.match(/firefox\/([\d.]+)/)) ? sys.firefox = s[1] :(s = ua.match(/chrome\/([\d.]+)/)) ? sys.chrome = s[1] :(s = ua.match(/opera\/.*version\/([\d.]+)/)) ? sys.opera = s[1] :(s = ua.match(/version\/([\d.]+).*safari/)) ? sys.safari = s[1] : 0 ;if(/webkit/.test(ua)) sys.webkit = ua.match(/webkit\/([\d.]+)/)[1];//alert(sys.webkit); })();//dom加载 function addDomLoaded(fn){var isReady = false;var timer = null;function doReady(){if(timer){clearInterval(timer);}if(isReady){return;}isReady = true;fn();}if((sys.opera && sys.opera < 9) || (sys.firefox < 3) || (sys.webkit && sys.webkit < 525)){timer = setInterval(function(){if(document && document.getElementById && document.getElementsByTagName && document.body){doReady();}},1); }else if(document.addEventListener){addEvent(document, 'DOMContentLoaded', function(){fn();removeEvent(document, 'DOMContentLoaded', arguments.callee);});}else if(sys.ie && sys.ie < 9){var timer = null;timer = setInterval(function(){try{document.documentElement.doScroll('left');doReady();}catch(e){};},1);} }function addEvent(obj, type, fn){if(typeof obj.addEventListener != 'undefined'){obj.addEventListener(type, fn, false);}else{if(!obj.events)obj.events = {};if(!obj.events[type]){obj.events[type]=[];if(obj['on' + type]) obj.events[type][0] = fn;}else{if(addEvent.equal(obj.events[type], fn)) return false;}obj.events[type][addEvent.ID++] = fn;obj['on' + type] = addEvent.exec; } }addEvent.ID = 1;addEvent.exec = function (event) {var e = event || addEvent.fixEvent(window.event);var es = this.events[e.type];for(var i in es){es[i].call(this, e);}; }addEvent.equal = function(es, fn){for(var i in es){if(es[i] == fn)return true}return false;}addEvent.fixEvent = function(event){event.preventDefault = addEvent.fixEvent.preventDefault;event.stopPropagation = addEvent.fixEvent.stopPropagation;event.target = event.srcElement;return event; }addEvent.fixEvent.preventDefault = function(){this.returnValue = false; }addEvent.fixEvent.stopPropagation = function(){this.cancelBubble = true; }//跨浏览器删除事件 /* function removeEvent(obj, type, fn){if(typeof obj.removeEventListener != 'undefined'){obj.removeEventListener(type, fn, false);}else if(typeof obj.detachEvent != 'undefined'){obj.detachEvent('on'+type, fn);} } */ function removeEvent(obj, type, fn){if(typeof obj.removeEventListener != 'undefined'){obj.removeEventListener(type, fn, false);}else{if(obj.events){for(var i in obj.events[type]){if(obj.events[type][i] == fn){delete obj.events[type][i];}}}} }//跨浏览器获取视口大小 function getInner(){if(typeof window.innerWidth != 'undefined'){return {width:window.innerWidth,height:window.innerHeight}}else{return {width:document.documentElement.clientWidth,height:document.documentElement.clientHeight}} }function getScroll(){return {top:document.documentElement.scrollTop || document.body.scrollTop,left:document.documentElement.scrollLeft || document.body.scrollLeft} }//获取STYLE function getStyle(element, attr){var value;if(typeof window.getComputedStyle != 'undefined'){value = window.getComputedStyle(element,null)[attr];}else if(typeof element.currentStyle != 'undefined'){value = element.currentStyle[attr];}return value; }//判断class是否存在 function hasClass(element, className){return element.className.match(new RegExp('(\\s|^)'+className+'(\\s|$)')) }//添加LINK规则 function insertRule(sheet, selectorText,cssText, postion){if(typeof sheet.insertRule != 'undefined'){sheet.insertRule(selectorText + '{' + cssText + '}', 0);}else if(typeof sheet.addRule != 'undefined'){sheet.addRule(selectorText,cssText, postion);} }function deleteRule(sheet, index){if(typeof sheet.deleteRule != 'undefined'){sheet.deleteRule(index);}else if(typeof sheet.removeRule !='undefined'){sheet.removeRule(index);} }function getInnerText(element){return (typeof element.textContent == 'string') ? element.textContent : element.innerText; }function setInnerText(element, text){if(typeof element.textContent == 'string'){element.textContent = text;}else{element.innerText = text;} }function offsetTop(element){var top = element.offsetTop;var parent = element.offsetParent;while(parent != null){top += parent.offsetTop;parent = parent.offsetParent;}return top; }//删除左右空格 function trim(str){return str.replace(/(^\s*)|(\s*$)/g, ''); }function inArray(array, value){for(var i in array){if(array[i] === value){return true;}}return false; }function predef(e){e.preventDefault(); }function prevIndex(current, parent){var length = parent.children.length;if(current == 0) return length-1;return parseInt(current) - 1; }function nextIndex(current, parent){var length = parent.children.length;if(current == length - 1) return 0;return parseInt(current) + 1; }function fixedScroll(){ //setTimeout(function(){ window.scrollTo(fixedScroll.left, fixedScroll.top); //},100); } /* function scrollTop(){document.documentElement.scrollTop = 0;document.body.scrollTop = 0; }*///阻止默认行为 function predef(e) {e.preventDefault(); }//创建cookie function setCookie(name, value, expires, path, domain, secure) {var cookieText = encodeURIComponent(name) + '=' + encodeURIComponent(value);if (expires instanceof Date) {cookieText += '; expires=' + expires;}if (path) {cookieText += '; expires=' + expires;}if (domain) {cookieText += '; domain=' + domain;}if (secure) {cookieText += '; secure';}document.cookie = cookieText; }//获取cookie function getCookie(name) {var cookieName = encodeURIComponent(name) + '=';var cookieStart = document.cookie.indexOf(cookieName);var cookieValue = null;if (cookieStart > -1) {var cookieEnd = document.cookie.indexOf(';', cookieStart);if (cookieEnd == -1) {cookieEnd = document.cookie.length;}cookieValue = decodeURIComponent(document.cookie.substring(cookieStart + cookieName.length, cookieEnd));}return cookieValue; }//删除cookie function unsetCookie(name) {document.cookie = name + "= ; expires=" + new Date(0); }
转载于:https://www.cnblogs.com/oceanden/p/4188651.html
javascript常用tool.js相关推荐
- 7 种 Javascript 常用设计模式学习笔记
7 种 Javascript 常用设计模式学习笔记 由于 JS 或者前端的场景限制,并不是 23 种设计模式都常用. 有的是没有使用场景,有的模式使用场景非常少,所以只是列举 7 个常见的模式 本文的 ...
- [转]ASP.NET中常用输出JS脚本的类
using System; using System.Collections.Generic; using System.Text; using System.Web; using System.We ...
- JavaScript常用代码
在这存一下JavaScript常用代码: 1.封装输出 1 var log = function() { 2 console.log.apply(console, arguments) 3 } 4 5 ...
- javaScript常用知识点有哪些
javaScript常用知识点有哪些 一.总结 一句话总结:int = ~~myVar, // to integer | 是二进制或, x|0 永远等于x:^为异或,同0异1,所以 x^0 还是永远等 ...
- javascript常用代码大全
http://caibaojian.com/288.html 原文链接 jquery选中radio//如果之前有选中的,则把选中radio取消掉 $("#tj_cat .pro_ca ...
- 107条javascript常用小技巧
107条javascript常用的方法技巧,呵呵!为什么就是108呢? 1.document.write(""); 输出语句 2.JS中的注释为// 3.传统的HTML文档顺序是: ...
- html5判断text文本是数字,JavaScript常用判断写法大全
js验证表单大全,用JS控制表单提交,具体内容如下所示: 1. 长度限制 function test() { if(document.a.b.value.length>50) { alert(& ...
- JavaScript基础和js概括
js内容概括: Html 结构化 CSS 样式 JavaScript 行为交互 01.JavaScript基础 02.JavaScript操作BOM对象 03.JavaScript操作DOM对象 ** ...
- ASP.NET中常用输出JS脚本的类(改进版)
在ASP.NET中我们经常需要输出一些JS脚本,比如弹出一个警告窗口,返回到历史页面等JS功能,我看到网上流传得比较广的是马先光写的一个JScript类,这个类基本将经常用到的JS脚本包含了,非常 ...
最新文章
- javascript-对混合字母/数字数组进行排序
- TaggerX——AI数据标注引入乡村振兴工作站解决农村地区青年就业问题【数据故事计划一等奖】...
- java.lang.IllegalArgumentException和org.apache.catalina.LifecycleException
- 狗蛋(驱动小白)和老王(硬件老司机)关于硬件那点事儿的一次密谈
- MYSQL--一条SQL更新语句是如何执行的?
- jmeter5.1.1启动提示not able to find java executable or version的解决办法
- 除了uni-app可以做app外,flutter更接近原生开发应用
- vue联动切换搜索域
- AdrenoProfiler对opengles的性能分析
- python中delta是什么意思_python – 根据dataframe中的值计算delta
- java文件处理(3)——实现文件复制和文件移动
- freeswitch被外国IP攻击盗打的防护措施
- Google 是这样的工作氛围
- pip或者python安装jpype总是报错----Boilerpipe使用
- 如何进入mysql命令界面
- Mac微信多开以及防撤回方案
- 分享大学生关于创新创业的想法,包括外卖私人订制化,网购衣服3D化远程试衣,睡眠耳机开发等等创新创业想法。
- 董文永武汉大学计算机学院,董文永
- linux命令行大于号、小于号、双大于号、双小于号
- 关于企业工业控制系统的网络安全保护设计方案
热门文章
- Android 编码规范:(五)避免创建不必要的对象
- [C#]结构体和字节数组的相互转化
- Server object instance creation failed on all SOC machines
- 软件配置管理(CN) Google讨论组
- SourceInsight下面一直出现unable to write to temp file for saving operation 这样的提示
- 1076. Wifi密码 (15)-PAT乙级真题
- 蓝桥杯 AGLO-152 算法训练 8-2求完数
- LeetCode 526. Beautiful Arrangement
- 1027. 打印沙漏(20)-PAT乙级真题
- 蓝桥杯 ADV-148算法提高 排队打水问题(贪心)