Javascript 常用代码总结
1. document.referrer可以获得上一页的地址,使用document.anchors获得页面上面所有的链接元素,而不必使用 document.getElementsByTagName('A');,同样道理还有document.forms , document.images。
2. function.length --> 参数的定义的个数,如 function aa(a,b,c) --> aa.length = 3
3. arguments [function.]arguments[n ] 正在执行的函数和调用它的函数的参数
需要说明的是arguments并不是一个数组,可用instanceof测试。
alert(arguments instanceof Array) //false
4. apply 方法能劫持另外一个对象的方法, 继承另外一个对象的属性。
alert(Math.max(5,8)) //8
var arr=[5,7,9,1]
alert(Math.max(arr)) // 这样却是不行的。一定要写成循环判断
--> Math.max.apply(null,arr) //可以计算这个数组中的最大值
--> Array.prototype.push.apply(arr1,arr2) //将数组arr2的元素追加到arr1里面去
如 func.call(func1,var1,var2,var3)对应的apply写法为:func.apply(func1,[var1,var2,var3])
Person.apply(this,arguments)
同时使用apply的好处是可以直接将当前函数的arguments对象作为apply的第二个参数传入
call 调用一个对象的一个方法,以另一个对象替换当前对象。
5. typeof 运算符把类型信息当作字符串返回。typeof 返回值有六种可能: "number," "string," "boolean," "object," "function," 和 "undefined."
6. 上传之后马上看到图片
检测图片文件大小
if(document.fileSize)
{alert(parseInt(document.images.oImg.fileSize,10))}
else
{alert("浏览器不支持此功能。")}
清空input file 值
document.getElementById('<%=fuFilesUpload.ClientID%>').outerHTML = document.getElementById('<%
=fuFilesUpload.ClientID%>').outerHTML;
7. js函数
替换 replace("","") -->只能替换首个匹配的 -->改成正则的.replace(/-/g,"/") 就能把所有"-"替换成"/"了
与函数结合:将所有单词首字母换成大写
var strM = "javascript is a good script language";
function change(word)
{
return word.indexOf(0).toUpperCase()+word.substring(1);
}
alert(strM.replace(/\b\w+\b/g,change));
拆分字符串: split("-")
连接字符串: strObj.concat(stringX,stringX,...,stringX) [可用于数组]
是否为有限数字: isFinite(number)
不是数字: isNaN(number) [Not a Number]
字符串加解密: escape()和unescape()
URI加密: encodeURI(URIstring) encodeURI("http://w.p.m?a=中国") -> http://www.w3pop.com?a=%E4%B8%AD%E5%9B%BD
URI解密: decodeURI(URIstring)
parseFloat(string) 返回由字符串转换得到的浮点数。
parseFloat 方法返回与 numString 中保存的数相等的数字表示。
如果 numString 的前缀不能解释为浮点数,则返回 NaN (而不是数字)。
parseFloat("abc") // 返回 NaN。 parseFloat("1.2abc") // 返回 1.2。
parseInt(string, radix) 将一个字符串转换为整型数字 其他同上
radix:进制 2 to 36 16进制 10进制 parseFloat("1.2abc") // 返回 1。
---转换方面---
Number(object) 转换为数字
String(object) 转换为字符串
strObj.toLowerCase() 小写字符串
strObj.toUpperCase() 大写字符串
---查找截取字符串方面---
strObj.indexOf(searchvalue,fromindex)
返回指定值在字符串中第一次出现的位置,如果没有找到子字符串,则返回 -1。fromindex可选的整数参数。规定在字符串中
开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的首字符开始检索。
strObj.lastIndexOf() 返回字符串中最后个出现指定字符串的位置,搜索方向是向后的。
strObj.match(searchvalue) 从字符串中查找指定的值,找到则返回指定值,找不到返回null
strObj.search(searchstring) 从字符串中寻找指定值的位置,找到返回在字符串中的位置,找不到返回-1 [search("aa")|search(/aa/)]
模糊匹配加i [search(/aa/i)] "/xxx/" ->正则表达式模式
strObj.slice(start,end) 从一个字符串选取一部分字符,并将它们返回成一个新的字符串
可以用一个负的起始值从字符串的末尾开始选取字符
strObj.substr(start,length) 从字符串中从指定的起始位置选取指定长度的一段字符
strObj.substring(start,stop) 特定位置间的字符
strObj.slice(start,end) 将部分字符抽出并在新的字符串中返回剩余部分
---样式方面---
strObj.sup() 上标字符串 比如平方
strObj.sub() 字符串显示成下标
strObj.small() 显示小一号的字符串
strObj.big() 显示大一号的字符串
strObj.strike() 字符串以删除的形式显示
strObj.blink() 显示闪烁的字符串 Firefox,Netscape
strObj.bold() 显示粗体字符串
strObj.fontcolor(color) 指定的颜色显示字符串
strObj.fontsize(size) 指定的字体大小显示字符串
strObj.italics() 用斜体显示字符串
strObj.link() 字符串以超级链接的形式显示
---
系统函数
新开以窗口: window.open("/page/Zulin/TZ/JGD_CHULI.aspx");
后退: window.history.go(-1);
关闭窗口: window.close()
确认对话框: if(window.confirm("你确定么?")){}else{}
带输入的对话框: window.prompt("请输入您的名字",""); 方法返回值即输入的值
剪切板: window.clipboardData.setData("Text",url);
自动调用方法1: window.setTimeout(vCode, milliseconds) 执行1次 1000毫秒为一秒
清除自动调用: clearTimeout(vCode)
自动调用方法2: window.setInterval(vCode, iMilliSeconds [, sLanguage]) 每隔iMilliSeconds就执行一次vCod
清除自动调用: clearInterval(vCode)
---
window.location.reload() 刷新
location.hash 设置或获取 href 属性中在井号“#”后面的分段。
location.host 设置或获取 location 或 URL 的 hostname 和 port 号码。
location.hostname 设置或获取 location 或 URL 的主机名称部分。
location.href 设置或获取整个 URL 为字符串。
location.pathname 设置或获取对象指定的文件名或路径。
location.port 设置或获取与 URL 关联的端口号码。
location.protocol 设置或获取 URL 的协议部分。
location.search 设置或获取 href 属性中跟在问号后面的部分。
window.external.AddFavorite(location.href, document.title) 加入收藏
window.external.ImportExportFavorites(true,) 导入收藏夹
window.external.ImportExportFavorites(false,) 导出收藏
window.external.ShowBrowserUI(OrganizeFavorites, null) 整理收藏夹
window.location = "view-source:" + window.location.href 查看原文件
window.external.ShowBrowserUI(LanguageDialog, null) 语言设置
window.onbeforeunload 事件触发的时候弹出一个有确定和取消的对话框,确定则离开页面,取消则继续待在本页。
触发于:
* 关闭浏览器窗口
* 通过地址栏或收藏夹前往其他页面的时候
* 点击返回,前进,刷新,主页其中一个的时候
* 点击 一个前往其他页面的url连接的时候
*
调用以下任意一个事件的时候:click,document write,document open,document close,window
close ,window navigate ,window NavigateAndFind,location replace,location
reload,form submit.
* 当用window open打开一个页面,并把本页的window的名字传给要打开的页面的时候。
* 重新赋予location.href的值的时候。
* 通过input type=”submit”按钮提交一个具有指定action的表单的时候。
window.onbeforeunload="javascript:void";
8. js事件
onkeypress 在用户按下并放开任何字母数字键时发生。系统按钮(例如,箭头键和功能键)无法得到识别。[响应一个键]
onkeyup 在用户放开任何先前按下的键盘键时发生。
onkeydown 在用户按下任何键盘键(包括系统按钮,如箭头键和功能键)时发生。[响应几个键的组合]
可以响应Ctrl、Alt、Shift等功能键和键的组合,而onkeypress不能
onfocusout 失去光标事件
onfocus 获得光标事件
onabort 图片下载被打断时
onblur 元素失去焦点时
ondblclick 鼠标双击
onerror 加载文档或图片发生错误时
onmousedown 鼠标被按下时
onmousemove 鼠标被移动时
onmouseout 鼠标离开元素时
onmouseover 鼠标经过元素时
onmouseup 释放鼠标按键时
onunload 用户离开页面时
9. JS Math对象
Math.round(x) 四舍五入后取整
Math.random() 返回一个0与1之间的随机数字
Math.max(x,y) 返回 x 和 y 之间较大的数
Math.min(x,y) 返回 x 和 y 之间较小的数
Math.floor(x) 返回 x 四舍五入后的最小整数
Math.ceil(x) 返回 x 四舍五入后的最大整数
Math.abs(x) 返回数字的绝对值
Math.pow(x,y) 返回 y^x 的值
10. scrollHeight: 获取对象的滚动高度。
scrollLeft: 设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
scrollTop: 设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
scrollWidth: 获取对象的滚动宽度
offsetHeight: 获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
offsetLeft: 获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置
offsetTop: 获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置
event.clientX 相对文档的水平座标
event.clientY 相对文档的垂直座标
event.offsetX 相对容器的水平坐标
event.offsetY 相对容器的垂直坐标
document.documentElement.scrollTop 垂直方向滚动的值
event.clientX+document.documentElement.scrollTop 相对文档的水平座标+垂直方向滚动的量
网页正文部分上:window.screenTop
网页正文部分左:window.screenLeft;
屏幕分辨率的高:window.screen.height;
屏幕分辨率的宽:window.screen.width;
屏幕可用工作区高度: window.screen.availHeight;
屏幕可用工作区宽度: window.screen.availWidth;
你的屏幕设置是 window.screen.colorDepth +" 位彩色";
你的屏幕设置 window.screen.deviceXDPI +" 像素/英寸";
11. js 循环
for(... in ...)语句
var mycars = new Array();
mycars[0] = "法拉力";mycars[1] = "保时捷";mycars[2] = "宝马;
for (x in mycars) { document.write(mycars[x] + "
"); }
while(bool){ ; } 语句
do{ ; } while (bool) 语句
---------
switch(key){ case 1: code;break;default:}
12. js 错误
try{ //throw "err1" }catch(err){ err.description } 这里能catch到throw 并且err就等于"err1"
13. js with语句 为语句设定默认对象。
x = Math.cos(3 * Math.PI) + Math.sin(Math.LN10) y = Math.tan(14 * Math.E)
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
with (Math){ x = cos(3 * PI) + sin (LN10) y = tan(14 * E)}
14. 禁用粘贴和拖拽到文本框
onpaste="return !clipboardData.getData('text').match(/\D/)" ondragenter="return false"
15. 子窗体刷新父窗体
window.opener.location.reload();
mlogon是父窗体的按钮
16. 屏蔽输入法
17. javascript来手动触发onchange事件
18. javascript数组用法
var xpos=new Array()
for (i=0;i<=message.length-1;i++) {
xpos[i]=-50}
var ypos=new Array() 湖北省
for (i=0;i<=message.length-1;i++) {
ypos[i]=-50}
(1).var myArray = new Array();或 var myArray = [];
(2).var myArray = new Array("red","green","blue");或 var myArray = ["red","green","blue"];
(3).var myArray = new Array(3);或 var myArray = [,,];
删除一个数组元素,可以用delete的运算符,例如:delete myArray[1];。
.length还有一个很好的用途,就是删除元素,比如一个有很多元素的数组,用户想删除所有的元素,可以用length操作,很简单快捷,比如:myArray.length = 0;。
strArr.shift() 删除并返回数组中第一个元素值
strArr.unshift(item1[,item2[,...]]) 为数组的开始部分加上一个或多个元素,并且返回该数组的新长度
strArr.slice(start,end) 从现有数组中的某个元素开始依次返回
strArr.splice(index,howmany,element1,.....,elementX)方法用于插入、删除或替换数组的元素
index: 必选项。指定在哪个位置加入/删除元素,必须是数字
howmany: 必选项。指定有多少元素应该被删除。必须是数字,可以是"0"
element1 可选。规定要添加到数组的新元素。从 index 所指的下标处开始插入。
elementX 可选。可向数组添加若干元素。
strArr.sort(sortby) sortby:可选 必须为一个函数 function sortByNumber(a,b){return a - b;} [数组本身会改变]
strArr.concat(arrayX,...,arrayX) 将两个或多个数组结合 [返回新的数组]
strArr.join(separator) 将数组中的所有元素合并起来成为一条字符串。每个元素可以指定他们的分隔标记。
strArr.shift() 删除并返回数组中第一个元素值 [数组本身会改变]
strArr.pop() 删除并返回数组最后的元素 [数组本身会改变]
strArr.push(newelement1,newelement2,....,newelementX) 可向数组的末尾添加一个或多个元素,并返回新的长度。[数组本身会改变]
strArr.reverse() 数组倒序
19. 文本框只能输入数字,比较完美,但是(.1)、(.001)能这样输入
onKeyPress="return event.keyCode>=48&&event.keyCode<=57||(this.value.indexOf('.')<0?event.keyCode==46:false)"
20. 如果将select的属性disabled 设置为false了,提交的时候服务器端将获得不了值
var sn_list = document.getElementById("ShopName");
var op = new Option("请选择店名","");
op.selected = true;
sn_list.add(op);
是不是所有表单元素设置disabled 设置为false之后服务器都获取不到?待验证。。
21. 替换字符串 .replace(new RegExp(",","gm")," ")
22. 简单的防止表单重复提交
23. 关闭自动完成 autocomplete="off"
24. js 对象
popObj=new Object()
popObj.name="POP"
popObj.addr="www.w3pop.com"
popObj.tip="欢迎你"
document.write(popObj.name + popObj.tip) -->POP欢迎你
---
function mypop(name,addr,tip)
{
this.name=name
this.addr=addr
this.tip=tip
}
newpop=new mypop("POP","www.w3pop.com","欢迎你")
document.write(newpop.name + newpop.tip) -->POP欢迎你
25. js特殊字符
\' 单引号
\" 双引号
\& &符号
\\ 反斜杠
\n 换行符
\r 回车符
\t 制表符
\b 退格符
\f 分页符
26. window.open 窗口特征
channelmode=yes|no|1|0 是否使用剧院模式显示窗口。默认为 no。
directories=yes|no|1|0 是否添加目录按钮。默认为 yes。
fullscreen=yes|no|1|0 是否使用全屏模式显示浏览器。默认是 no。处于全屏模式的窗口必须同时处于剧院模式。
height=pixels 窗口文档显示区的高度。以像素计。
left=pixels 窗口的 x 坐标。以像素计。
location=yes|no|1|0 是否显示地址字段。默认是 yes。
menubar=yes|no|1|0 是否显示菜单栏。默认是 yes。
resizable=yes|no|1|0 窗口是否可调节尺寸。默认是 yes。
scrollbars=yes|no|1|0 是否显示滚动条。默认是 yes。
status=yes|no|1|0 是否添加状态栏。默认是 yes。
titlebar=yes|no|1|0 是否显示标题栏。默认是 yes。
toolbar=yes|no|1|0 是否显示浏览器的工具栏。默认是 yes。
top=pixels 窗口的 y 坐标。
width=pixels 窗口的文档显示区的宽度。以像素计。
27. event.altKey 当alt键按下时,值为 TRUE ,否则为 FALSE 。只读
event.ctrlKey 当ctrl键按下时,值为 TRUE ,否则为 FALSE 。只读
event.shiftKey 当shift键按下时,值为 TRUE ,否则为 FALSE 。只读。
event.button 这个属性仅用于onmousedown, onmouseup, 和 onmousemove 事件。检测键盘事件相对应的内码。
0 没按键
1 按左键
2 按右键
3 按左右键
4 按中间键
5 按左键和中间键
6 按右键和中间键
7 按所有的键
对其他事件,不管鼠标状态如何,都返回 0(比如onclick)。
event.keyCode 这个属性用于 onkeydown, onkeyup, 和 onkeypress 事件。
可读写的值,可以是任何一个Unicode键盘内码。如果没有引发键盘事件,则该值为 0 。
event.clientX 返回鼠标在窗口客户区域中的X坐标,只读属性。
event.clientY 返回鼠标在窗口客户区域中的Y坐标,只读属性。
event.offsetX 检查相对于触发事件的对象,鼠标位置的水平坐标
event.offsetY 检查相对于触发事件的对象,鼠标位置的垂直坐标
event.screenX 检测鼠标相对于用户屏幕的水平位置,只读属性
event.screenY 检测鼠标相对于用户屏幕的垂直位置,只读属性
event.x 返回鼠标相对于css属性中有position属性的上级元素的x轴坐标。如果没有css属性中有position属性的上级元素,默认以BODY元素作为参考对象。
如果事件触发后,鼠标移出窗口外,则返回的值为 -1,只读属性。
event.y 同上相反
event.srcElement 返回触发事件的元素,只读。
event.fromElement 检测 onmouseover 和 onmouseout 事件发生时,鼠标所离开的元素。只读属性。
event.toElement 检测 onmouseover 和 onmouseout 事件发生时,鼠标所进入的元素。只读属性。
event.returnValue[ = Boolean] 设置或检查从事件中返回的值,true 事件中的值被返回,false 源对象上事件的默认操作被取消
event.type 返回事件名。返回没有“on”作为前缀的事件名,比如,onclick事件返回的type是click,只读。
转自原文:http://blog.chinaunix.net/uid-20573208-id-1627692.html
Javascript 常用代码总结的更多相关文章
- javascript常用代码大全
http://caibaojian.com/288.html 原文链接 jquery选中radio //如果之前有选中的,则把选中radio取消掉 $("#tj_cat .pro_ca ...
- 【转】JavaScript常用代码书写规范
javascript 代码规范 代码规范我们应该遵循古老的原则:“能做并不意味着应该做”. 全局命名空间污染 总是将代码包裹在一个立即的函数表达式里面,形成一个独立的模块. 不推荐 1 2 3 var ...
- JavaScript常用代码段
总结一下在各种地方看到的还有自己使用的一些实用代码 1)区分IE和非IE浏览器 if(!+[1,]){ alert("这是IE浏览器"); } else{ alert(" ...
- JavaScript常用代码书写规范
javascript 代码规范 代码规范我们应该遵循古老的原则:“能做并不意味着应该做”. 全局命名空间污染 总是将代码包裹在一个立即的函数表达式里面,形成一个独立的模块. 不推荐 , y = ; c ...
- javascript常用代码(不完整版)
求大神指点 Javascript嵌入式 <script typt:javascript>代码</script> 注释 //或者/*内容*/ 变量名赋值 Var 变量名 = 值 ...
- JavaScript 常用代码
未知对象 对象类型名称:xobject.constructor.name 对象成员键名:Object.keys(xobject) 枚举对象成员及其值:for(var propertyName in r ...
- JavaScript常用代码
页面的按钮全选: function CheckBoxAll() { //得到页面上所有input表单元素:document.getElementsByTagName( ...
- H5中JavaScript常用代码片段
/** * 批量替换方法,批量过滤特殊字符,通常用在通过后的各种编辑器添加的内容在App上编辑上使用 * james.wang 2016-11-11 * 使用方法:ReCont(Content,[&q ...
- javascript常用代码片段
/** * * @desc 判断两个数组是否相等 * @param {Array} arr1 * @param {Array} arr2 * @return {Boolean} */ function ...
随机推荐
- minicom与USB转串口
实验器材:mini6410 连接方式:ARM板通过USB转串口线连接到pc机 下面是具体的设置了. 默认情况下,UBUNTU安装了USB转串口驱动(pl2303). 1.# lsmod | grep ...
- javascript模式——Flyweight
Flyweight是一种共享数据内存的模式. Flyweight模式是将一些公有属性从个人中剔除,放在共享的对象当中. 下面以一个项目实例,通过不断的改进,以显示Flyweight模式的优点. 现在我 ...
- 反射操作辅助类ReflectionUtil
这篇文章的目的是介绍这样一种方式,就是在写一个函数的时候,传递的参数是object类型的,在这个函数里面想访问这个参数对象的某一属性值,我们知道这个属性值的name,但是一般情况下,object对象是 ...
- 使用FindControl("id")查找控件 返回值都是Null的问题
做了一个通过字符串ID查找页面控件并且给页面控件赋值的功能,过程中遇到了this.FindControl("id")返回值都是Null的问题,记录一下解决办法. 问题的原因是我所要 ...
- jfreechart中文乱码问题解决方案(转)
参考网址:http://zhidao.baidu.com/link?url=y88rR1_aAHaFofonx9o_IaEu87MpkTQImsqDcy587eG55JkfQV6EzzzloIgXuQ ...
- Oracle创建数据库、表、用户
create tablespace south_knowledge logging datafile 'D:\TestDatabase\south_knowledge.dbf' size 10m au ...
- 【转】关于C++程序的编码问题
引用自:http://blog.chinaunix.net/uid-26790551-id-3190813.html 我们传统的程序基本都只在Windows或只在Linux下运行,Windows程序使 ...
- Java程序读取tomcat下的properties配置文件
代码如下: //找到tomcat/etc/wx文件夹 private static String getPropFolderPath() { /* Properties p = Syst ...
- HTML5 canvas 在线画笔绘图工具(四)
HTML5画图命令 图形的绘制是由TDrawHandler与TCommand 协同工作完成. TDrawHandler需要完成以下工作 1.聚集类用于管理绘图的命令 TCommand 2.管理鼠标事件 ...
- PHP字符编码问题-总结
今天在网上看到一个人的对于php开发中字符编码的总结,感觉不错,摘录如下: 一,php编码转换 1.通过iconv()函数实现编码转换 语法:iconv(s ...