- 浏览: 181068 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (134)
- java笔记 (25)
- Android开发 (3)
- Mybatis笔记 (1)
- oracle (9)
- javaScript (23)
- struts2 (2)
- jquery (6)
- java多线程 (6)
- 全文检索lucene (1)
- solr4.4 (5)
- solr4.9 (1)
- css 要点 (2)
- fmt格式化 (1)
- 百度地图 (1)
- 显示层jsp (2)
- ant (3)
- 脑袋放水 (2)
- 播放器 (1)
- log日志 (1)
- Spring (1)
- 设计模式 (2)
- httpservlet (1)
- seo (1)
- eclipse使用技巧 (1)
- 正则表达式 (2)
- 我的异常解决方案 (2)
- 集群服务器 (2)
- java网络编程 (3)
- Eclipse快捷键 (1)
- 图片和Base64互转 (1)
- maven (0)
- jsoup 网络爬虫 (1)
- 安全防范 (1)
- 非关系型数据库 (1)
- 在线工具 (1)
- HTML5学习 (1)
- Apache-Mina (1)
最新评论
-
wenjiao8204322:
不好意思说错了,是变量替换后,如果是英文和数字,是不换行的,如 ...
html 转换成pdf -
wenjiao8204322:
楼主你好,有问题、一直难以解决,我们项目上线后,就遗留在这就是 ...
html 转换成pdf -
jacking124:
scoreName 这个属性是做什么的!
jquery.raty-评级插件 -
高军威:
yixiandave 写道高军威 写道alvin198761 ...
Java中的五种实现方法【单例模式】 -
yixiandave:
高军威 写道alvin198761 写道53./** 54. ...
Java中的五种实现方法【单例模式】
·
·
计算几天、几年、几个月后的日期
1.回车触发事件 onkeydown="if(event.keyCode==13){checkVendor();}"
·
2.打开新的窗口事件 window.open(url,'_blank');
计算几天、几年、几个月后的日期
<%-- 计算日期 type 1://一年后的日期 2://半年后的日期 3://三个月后的日期 --%> function calculateDate(type) { var now_f = new Date().format("yyyyMMdd"); var datetime; switch(type) { case 1://一年后的日期 datetime = new Date( parseFloat(Number(now_f.substr(0, 4))+1), parseFloat(now_f.substr(4, 2) - 1), parseFloat(now_f.substr(6, 2)), parseFloat('00'), parseFloat('00'), parseFloat('00') ); break; case 2://半年后的日期 datetime = new Date( parseFloat(now_f.substr(0, 4)), parseFloat(Number(now_f.substr(4, 2)-1)+6), parseFloat(now_f.substr(6, 2)), parseFloat('00'), parseFloat('00'), parseFloat('00') ); break; case 3://三个月后的日期 datetime = new Date( parseFloat(now_f.substr(0, 4)), parseFloat(Number(now_f.substr(4, 2)-1)+3), parseFloat(now_f.substr(6, 2)), parseFloat('00'), parseFloat('00'), parseFloat('00') ); break; } $("#per_valid").val(datetime.format("yyyy-MM-dd")); }
/** * js bug:解决 javascript 的 小数截取的bug。<br> * bug: alert(parseFloat(0.006).toFixed(2)); 显示 0.00 修改后显示 0.01 */ Number.prototype.toFixed = function(d) { var s = this + ""; if (!d) d = 0; if (s.indexOf(".") == -1) s += "."; s += new Array(d + 1).join("0"); if (new RegExp("^(-|\\+)?(\\d+(\\.\\d{0," + (d + 1) + "})?)\\d*$").test(s)) { var s = "0" + RegExp.$2, pm = RegExp.$1, a = RegExp.$3.length, b = true; if (a == d + 2) { a = s.match(/\d/g); if (parseInt(a[a.length - 1]) > 4) { for ( var i = a.length - 2; i >= 0; i--) { a[i] = parseInt(a[i]) + 1; if (a[i] == 10) { a[i] = 0; b = i != 1; } else break; } } s = a.join("").replace(new RegExp("(\\d+)(\\d{" + d + "})\\d$"), "$1.$2"); } if (b) s = s.substr(1); return (pm + s).replace(/\.$/, ""); } return this + ""; }; // 给Number类型增加四则运算 /** * js bug:js四则运算小数精度丢失的bug修复。例如:1.5451+0.34133 * 按理来说应该是等于1.88643,结果JS给计算时居然算成1.88629999999998了 调用方法 */ /** * 加法:1.5451+0.34133 的调用方法为:var s = (1.5451).add(0.34133).toFixed(2); * alert((7.1).add(12.00027)+"="+(7.1+12.00027)); */ Number.prototype.add = function(arg) { var bit1, bit2, m; try { bit1 = arg.toString().split(".")[1].length; } catch (e) { bit1 = 0; } try { bit2 = this.toString().split(".")[1].length; } catch (e) { bit2 = 0; } m = Math.pow(10, Math.max(bit1, bit2)); return (this * m + arg * m) / m; }; /** * 减法: 1.5451-0.34133 的调用方法为:var s = (1.5451).sub(0.34133); */ Number.prototype.sub = function(arg) { var bit1, bit2; try { bit1 = arg.toString().split(".")[1].length; } catch (e) { bit1 = 0; } try { bit2 = this.toString().split(".")[1].length; } catch (e) { bit2 = 0; } var n = Math.max(bit1, bit2); var m = Math.pow(10, n); return Number(((this * m - arg * m) / m).toFixed(n)); }; /** * 乘法: 1.5451*0.34133 的调用方法为:var s = (1.5451).mul(0.34133).toFixed(3); */ Number.prototype.mul = function(arg) { var bit1, bit2; try { bit1 = arg.toString().split(".")[1].length; } catch (e) { bit1 = 0; } try { bit2 = this.toString().split(".")[1].length; } catch (e) { bit2 = 0; } var m = bit1 + bit2; // var n = (bit1 > bit2) ? bit1 : bit2; return (Number(this.toString().replace(".", "")) * Number(arg.toString().replace(".", "")) / Math.pow(10, m));// .toFixed(n); }; /** * 除法: 1.5451/0.34133 的调用方法为:var s = (1.5451).div(0.34133).toFixed(3); */ Number.prototype.div = function(arg) { var bit1, bit2; try { bit1 = arg.toString().split(".")[1].length; } catch (e) { bit1 = 0; } try { bit2 = this.toString().split(".")[1].length; } catch (e) { bit2 = 0; } var n = Math.max(bit1, bit2); var m = Math.pow(10, n); // return (Number(this.toString().replace(".", ""))*m) / // (Number(arg.toString().replace(".", ""))*m); return ((this * m) / (arg * m)); }; // 给String对象增加四则运算 /** * 加法:1.5451+0.34133 的调用方法为:var s = (1.5451).add(0.34133).toFixed(2); * alert((7.1).add(12.00027)+"="+(7.1+12.00027)); */ String.prototype.add = function(arg) { return Number(this).add(arg); }; /** * 减法: 1.5451-0.34133 的调用方法为:var s = (1.5451).sub(0.34133); */ String.prototype.sub = function(arg) { return Number(this).sub(arg); }; /** * 乘法: 1.5451*0.34133 的调用方法为:var s = (1.5451).mul(0.34133).toFixed(3); */ String.prototype.mul = function(arg) { return Number(this).mul(arg); }; /** * 除法: 1.5451/0.34133 的调用方法为:var s = (1.5451).div(0.34133).toFixed(3); */ String.prototype.div = function(arg) { return Number(this).div(arg); }; /** * 处理html转义 调用方法为:var s = "aaa".escape("aaa"); */ String.prototype.escape = function (html){ var codeSpan = /(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm; var codeBlock = /(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=~0))/g; var spans = []; var blocks = []; var text = String(html).replace(/\r\n/g, '\n').replace('/\r/g', '\n'); text = '\n\n' + text + '\n\n'; texttext = text.replace(codeSpan, function(code){ spans.push(code); return '`span`'; }); text += '~0'; return text.replace(codeBlock, function(code){ blocks.push(code); return '\n\tblock'; }).replace(/&(?!\w+;)/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/`span`/g, function(){ return spans.shift(); }).replace(/\n\tblock/g, function(){ return blocks.shift(); }).replace(/~0$/, '').replace(/^\n\n/, '').replace(/\n\n$/, ''); }; // 等比例缩放图片 //var flag = false; /** * ImgD:原图 maxWidth:允许的最大宽度 maxHeight:允许的最大高度 */ function resizeimg(ImgD, maxWidth, maxHeight) { //ImgD.style.display="none"; //隐藏加到这儿不管用,应该放到img标签中 var image = new Image(); var iwidth = maxWidth; // 定义允许图片宽度 var iheight = maxHeight; // 定义允许图片高度 image.src = ImgD.src; if (image.width > 0 && image.height > 0) { //flag = true; if (image.width / image.height >= iwidth / iheight) { if (image.width > iwidth) { ImgD.width = iwidth; ImgD.height = (image.height * iwidth) / image.width; } else { ImgD.width = image.width; ImgD.height = image.height; } //ImgD.alt = image.width + "×" + image.height; } else { if (image.height > iheight) { ImgD.height = iheight; ImgD.width = (image.width * iheight) / image.height; } else { ImgD.width = image.width; ImgD.height = image.height; } //ImgD.alt = image.width + "×" + image.height; } } centerImage(ImgD, maxWidth, maxHeight); ImgD.style.display="inline"; } /** * Date:给日期对象添加格式化方法 * 使用方法 var date = new Date().format('yyyy-MM-dd') */ Date.prototype.format = function(format){ var o = { "M+" : this.getMonth()+1, //month "d+" : this.getDate(), //day "h+" : this.getHours(), //hour "m+" : this.getMinutes(), //minute "s+" : this.getSeconds(), //second "q+" : Math.floor((this.getMonth()+3)/3), //quarter "S" : this.getMilliseconds() //millisecond } if(/(y+)/.test(format)) { format = format.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length)); } for(var k in o) { if(new RegExp("("+ k +")").test(format)) { format = format.replace(RegExp.$1, RegExp.$1.length==1 ? o[k] : ("00"+ o[k]).substr((""+ o[k]).length)); } } return format; } function centerImage(imgD, maxWidth, maxHeight) { // var div = imgD.parentNode;// 获取包含本图片的div不用这个 if (imgD.height < maxHeight) { var top = (maxHeight - imgD.height) / 2-2; //ie6不支持这么获取高度,所以ie6下不执行 if(imgD.height!=0){ imgD.style.marginTop = top + "px"; } } if (imgD.width < maxWidth) { var left = (maxWidth - imgD.width) / 2; //ie6不支持这么获取宽度,所以ie6下不执行 if(imgD.width!=0){ imgD.style.marginLeft = left + "px"; } } } /** * 将字符串格式的日期(如:20150415092645)转换成js Date对象 * 注意Date对象的初始化方式 * */ function js_patch_getdate(stime) { var datetime = new Date( parseFloat(stime.substr(0, 4)), parseFloat(stime.substr(4, 2) - 1), parseFloat(stime.substr(6, 2)), parseFloat(stime.substr(8, 2)), parseFloat(stime.substr(10, 2)), parseFloat(stime.substr(12, 2))); return datetime; } function js_patch_fillZero(num, digit) { var str = '' + num; while (str.length < digit) { str = '0' + str; } return str; } function debug_showAttr(obj) { var str="<b>begin:the attribute of "+obj+"</b><br/>"; for(var i in obj) { str+="<b>"+i+"</b>=="+obj[i]+"<br>"; } document.body.innerHTML+=str; } function debug_showMsg(str) { document.body.innerHTML+=str; } function debug_showMsgSrc(str) { document.body.innerHTML+=str.replace(/</g,"<").replace(/>/g,">"); }
发表评论
-
js常用的对象扩展方法
2016-02-16 17:03 1379/** * js bug:解决 javascript ... -
js日期溢出
2015-06-17 17:15 888//有溢出问题 function js_patch_ge ... -
向上滚动到浏览器顶部固定住,向下滚动出浏览器顶部回复原状
2015-05-06 15:55 1227js代码: //当滚动到浏览器顶部时 浮动固定 不随网页滚 ... -
一个页面多个倒计时js代码
2015-04-15 10:17 1165粗略的整理下 解决需求: 1.解决一个页面多个倒计时 2.每 ... -
网页 返回头部
2015-01-09 14:36 679网上各种各样的眼花缭乱,索性自己写一个,这只是个简单的例子, ... -
页面复制文本信息
2015-01-05 12:56 667<!DOCTYPE html PUBLIC &quo ... -
IE 玛德好霸道,就你特殊
2014-10-24 15:31 433尼玛一. document.getElementsByNa ... -
js代码
2014-10-22 16:19 0$(document).ready(function() { ... -
得到浏览器尺寸,判断浏览器内核
2014-10-09 13:24 1086效果图: 代码部分: <!DOCTYPE ht ... -
Js汉字和Unicode编码互转 Unicode加密 Unicode解密
2014-08-11 15:19 1175加密是为了保护源代码;解密是为了看到源代码 参考文档: htt ... -
js运算bug,等等
2014-06-23 15:48 0/** * js bug:解决 javascript ... -
Ajax表单提交的特殊字符处理
2014-05-09 11:32 778封装成json格式在提交就没有为题了 W3 ... -
复选框 浏览器兼容问题解决方案
2014-01-03 10:41 822需求,会员注册,勾选统一注册协议复选框,按钮变 亮可用, 不勾 ... -
选中复选框后按钮可用,不选中不可用
2013-11-29 10:37 1357<input type="checkbox ... -
CSS中的绝对定位与相对定位
2013-11-26 16:35 592... -
Jquery 收藏本站代码
2013-10-29 15:45 1618//收藏本站代码 jQuery.fn.addFavo ... -
ie6和ie7下z-index bug的解决办法
2013-09-24 14:43 1032在CSS中,显然,只能通过代码改变层级,这个属性就是z-ind ... -
【转】jsp、freemarker、velocity比较
2013-09-11 14:27 1026在java领域,表现层技术主要有三种:jsp、freemark ... -
图片上下无间隙滚动
2013-07-19 17:52 1101图片上下无间隙滚动↓↓↓↓↓↓ -
JS实现文本不间断上线滚动效果【转】
2013-07-04 10:04 1150其实这种js控制文本上下不间断滚动的例子不少,但是常常找的不是 ...
相关推荐
在这个"常用js方法封装"的项目中,我们可以期待看到以下几类JavaScript方法的封装: 1. 链式操作:通过return this机制,实现方法之间的链式调用,如$.extend()在jQuery中就是这样实现的,可以连续设置多个属性或...
里面包含6个JS函数,有获取设备类型、获取url参数、格式化时间戳、复制到粘贴板、去除首位空格、获取cookie。可供学习使用
在JavaScript的常用库中,我们可以找到许多方便的公共方法,这些方法极大地提高了开发效率。 一、JavaScript常用函数 1. 数组操作函数 - `push()`: 向数组末尾添加一个或多个元素,并返回新长度。 - `pop()`: ...
在JavaScript编程中,掌握常用的方法和技巧是至关重要的。以下是一些核心知识点的详细说明: 1. **创建脚本块**:在HTML中,我们通常使用`<script>`标签来插入JavaScript代码。例如: ```html <script language="...
本资源包“JavaScript常用技术”包含了图片处理特效、文字特效以及一系列常用的JavaScript方法,是开发者学习和实践JavaScript技术的宝贵资料。 一、图片处理特效 在Web开发中,图片处理是不可或缺的一部分。...
javascript常用对象及方法 javascript中有许多常用的对象和方法,了解这些对象和方法可以帮助我们更好地使用javascript。下面我们将详细介绍这些对象和方法。 一、窗口对象Window Window对象是javascript中的顶级...
JavaScript(简称JS)是一种轻量级的脚本语言,常用于...通过理解这些基本的JavaScript方法和事件,开发者可以创建丰富的交互式网页应用,提高用户体验。熟练掌握这些知识将有助于你在JavaScript编程中更加得心应手。
常用的JS方法,处理了浏览器兼容性 getElement(name); getElements(name); getElementsByTagName(name);
### JavaScript中字符串相关常用的使用方法总结 #### 一、引言 JavaScript作为一种广泛使用的脚本语言,被大量应用于Web开发之中。其中,字符串处理是非常重要的一个方面,涉及到数据的读取、修改、拼接等操作。...
本篇文章将详细探讨JS的常用方法,旨在为开发者提供一个全面的参考。 一、变量声明与类型转换 在JavaScript中,我们可以使用`var`, `let`, 和 `const` 关键字来声明变量。`var` 是老式的声明方式,具有变量提升...
总的来说,理解和熟练运用这些JavaScript方法和CSS定位属性,能够帮助开发者更好地控制网页元素的显示和交互,提升用户体验。在实际开发中,还需要结合其他技术如DOM操作、事件处理等,才能构建出功能丰富的Web应用...
### 常用JavaScript方法概述 #### 1. 字符串方法 字符串是JavaScript中最常用的数据类型之一。下面列举了一些常用的字符串方法: - **charAt()**:返回指定位置的字符。 - **indexOf() / lastIndexOf()**:返回...
### JS常用属性与方法详解 JavaScript(简称JS)是一种广泛使用的、基于原型的脚本语言,主要用于网页开发,提供交互性和动态更新的能力。在JS中,掌握数组的属性和方法对于编写高效、灵活的代码至关重要。 #### ...
根据提供的文件信息,本文将对JavaScript(简称JS)中的几个常用方法进行详细的解析与说明,主要包括获取好友列表、获取个人信息以及获取照片列表的功能实现。这些功能通常在社交应用开发中非常常见,通过JavaScript...
能用就行
一个常用的js帮助类,里面有一些常用的js方法,可以直接引用,也可以把需要的方法复制到自己的js中
在这个“javascript常用方法实例”中,我们将会探讨一些JavaScript的核心概念和常用方法,以及它们在实际应用场景中的实例。 1. **DOM操作**:Document Object Model(DOM)是HTML和XML文档的结构化表示,...
第11节 JavaScript数组常用方法及应用.rar第11节 JavaScript数组常用方法及应用.rar第11节 JavaScript数组常用方法及应用.rar第11节 JavaScript数组常用方法及应用.rar第11节 JavaScript数组常用方法及应用.rar第11...