代码改变世界

随笔分类 -  javascript基础

【javascript】JS的window.createPopup()

2012-07-12 13:57 by sniper007, 769 阅读, 收藏, 编辑
摘要: JS的window.createPopup()学习function OpenShortcutMenu( domObj ){var pop = window.createPopup();var popBody = pop.document.body;popBody.innerHTML = "Testing..."pop.show(window.event.x, 76, 140,200, document.body);}(1)var pop 变量:popup 对象一种特殊的顶层窗口,主要用于出现在应用程序主窗口之外的对话框、消息框和其它临时窗口。注释:此对象在 Microsof 阅读全文

【javascript基础】分享5个最佳的JavaScript日期处理类库

2012-07-05 15:35 by sniper007, 176 阅读, 收藏, 编辑
摘要: 在大家日常网站开发和web应用开发中,我们往往需要有效的调用Javascript处理日期和时间格式相关的函数,在Javascript中已经 包含了部分最基本的内建处理方法。当然如果大家有时间的话,完全可以自己开发和编写需要的方法,但是有效的使用别人已经开发好的类库肯定是一个更好的处理 方式,没有必要什么都原创吧,君子善假于物也。今天这里我们收集了5个最佳的日期处理函数类库,希望对于大家有帮助,如果你喜欢我们的文章,请大家给我们 留言,谢谢!1. XDate这个类库是javascript本地日期对象的封装,提供了加强的方法来帮助你解析,格式化和日期处理。 使用它就类似使用javascript自己 阅读全文

【javascript基础】Javascript的getYear、getFullYear、getUTCFullYear异同

2012-07-05 15:01 by sniper007, 297 阅读, 收藏, 编辑
摘要: getYear、getFullYear、getUTCFullYear都是Javascript的Date对象的方法函数。其中 getYear()方法出生较早,在早期也一直使用OK,可是在2000年后这个方法问题多多,因为在Firefox和Safari等浏览器 上,getYear始终返回年份与1900 年之间的差,比如1998年返回98,而2009年则会显示109,如果大家都这么处理也好,要加一起加,微软自己在IE浏览器中把getYear给修正 了,可Firefox(最新版本也没修正这个问题)还蒙在鼓里,仍老老实实的按照原有规则解析getYear,本来都可以指望用户自行修正,这样一来都没 得用,于 阅读全文

网页浏览器内核的比较研究

2012-05-24 16:54 by sniper007, 209 阅读, 收藏, 编辑
摘要: /Files/sniper007/网页浏览器内核的比较研究.pdf 阅读全文

【javascript基础】之【IE著名bug——如果某个实例属性与标为[[DontEnum]]的某个属性同名,那么该实例属性不会出现在for in】

2012-05-21 14:54 by sniper007, 1595 阅读, 收藏, 编辑
摘要: 【题记】每次看《javascript高级程序设计》第九章第二节的“怪癖检测”的时候,看到IE的bug,看一下,知道有这么一个东西,因为实际项目中还没有用到这个,今天再看,势必要把这个搞清楚。【正文】如果某个实例属性与标为[[DontEnum]]的某个属性同名,那么该实例属性不会出现在for in,测试 <divid="txt"></div><script>vararr={"first":1,"second":2,"third":3,toString:function(){},va 阅读全文

【javascript基础】之【确定元素坐标】

2012-04-26 16:29 by sniper007, 1405 阅读, 收藏, 编辑
摘要: 【javascript基础】之【确定元素坐标】 IE、FireFox3以及更高版本和Opera9.5以及更高版本都提供了getBoundingClientRect()方法,这个方法返回一个矩形对象,left、top、right、bottom,这些属性返回的是节点相对于浏览器(0,0)坐标(节点相对于视口的位置)的位置。但IE认为文档的左上角坐标是(2,2),而FireFox Opera则将传统的(0,0)作为起点坐标,因此开始的时候,检查一下位于(0,0)的位置。demo:<divid="msg"style="width:400px;height:400px 阅读全文

【javascript基础】之【javascript1.6 Array 新增方法】之【indexOf】

2012-04-24 18:24 by sniper007, 311 阅读, 收藏, 编辑
摘要: SummaryReturns the first index at which a given element can be found in the array, or -1 if it is not present. Method of Array Implemented in JavaScript 1.6 ECMAScript Edition ECMA... 阅读全文

【javascript基础】之【javascript1.6 Array 新增方法】

2012-04-24 18:20 by sniper007, 216 阅读, 收藏, 编辑
摘要: 数组扩展 七个新的Array方法可以分成两类:项(item)的定位方法和迭代方法。 项定位方法为: indexOf() - 返回指定项首次出现的索引。 lastIndexOf() - 返回指定项最后一次出现的索引。 迭代方法包括: every() - 在数组中的每个项上运行一个函数,若所有结果都返回真值,此方法亦返回真值。 filter() - 在数组中的每个项上运行一个函数,并将函数返回真值的项作为数组返回。 forEach() - 在数组中的每个项上运行一个函数。 map() - ... 阅读全文

【javascript基础】之【__defineGetter__ 跟 __defineSetter__】

2012-04-24 15:34 by sniper007, 4277 阅读, 收藏, 编辑
摘要: Getter是一种获取一个属性的值的方法,Setter是一种设置一个属性的值的方法。可以为任何预定义的核心对象或用户自定义对象定义getter和setter方法,从而为现有的对象添加新的属性。有两种方法来定义Getter或Setter方法:在对象初始化时定义在对象定义后通过Object的__defineGetter__、__defineSetter__方法来追加定义在使用对象初始化过程来定义Getter和Setter方法时唯一要做的事情就是在getter方法前面加上“get”,在setter方法前面加上“set”。还有一点要注意的就是getter方法没有参数,setter方法必须有一个参数,也 阅读全文

【javascript基础】之【constructor属性】

2012-04-24 12:16 by sniper007, 295 阅读, 收藏, 编辑
摘要: constructor属性始终指向创建当前对象的构造函数。比如下面例子: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->// 等价于 var foo = new Array(1, 56, 34, 12); var arr = [1, 56, 34, 12]; console.log(arr.constructor === Array); // true // 等价于 var foo = new Function();... 阅读全文

【javascript基础】之Javascript 操作select控件大全(新增、修改、删除、选中、清空、判断存在等)

2012-04-20 16:07 by sniper007, 199 阅读, 收藏, 编辑
摘要: 1判断select选项中是否存在Value="paraValue"的Item2向select选项中加入一个Item3从select选项中删除一个Item4删除select中选中的项5修改select选项中value="paraValue"的text为"paraText"6设置select中text="paraText"的第一个Item为选中7设置select中value="paraValue"的Item为选中8得到select的当前选中项的value9得到select的当前选中项的text10得 阅读全文

【javascript基础】之【onpropertychange、onchange、oninput】

2012-02-13 18:55 by sniper007, 363 阅读, 收藏, 编辑
摘要: onpropertychangeIE下特有的事件,解释:”当一个HTML元素的属性改变的时候,都能通过onpropertychange来捕获。“<inputtype="text"id="username"/><br/><inputtype="text"id="pwd"/><script>varus=document.getElementById("username");varpwd=document.getElementById("pwd 阅读全文

JavaScript构造函数返回值问题

2012-02-10 17:53 by sniper007, 493 阅读, 收藏, 编辑
摘要: 如果一个函数的返回值是一个引用类型(数组、对象或者函数)的数据,那么将这个函数作为构造函数用new运算符执行构造时,运算结果将被它返回值取代,这时候,构造函数体内的this值丢失了,取而代之的是被返回的对象。 例如: function Example() { this.child=0; return function() {alert(1);} } var instant=newExample(); alert(instant.child);//显示undefined 阅读全文

【javascript基础】之document.body和document.documentElement比较

2011-12-27 11:25 by sniper007, 310 阅读, 收藏, 编辑
摘要: document.body和document.documentElement比较: document.body是DOM中Document对象里的body节点, document.documentElement是文档对象根节点(html)的引用。 IE在怪异模型(quick mode)下document.documentElement无法正确取到clietHeight scrollHeight等值,比如clietHeight=0。可以见IE的怪异模型并没有把html作为盒子模型的一部分,好在现在很少使用怪异模 型。(注:如果页面没写DTD或写的不对,IE6默认使用怪异模型解析页面... 阅读全文

RegExp.lastIndex

2011-12-19 18:11 by sniper007, 570 阅读, 收藏, 编辑
摘要: 下次匹配的起始位置 摘要 regexp.lastIndex 描述 RegExp对象的属性lastIndex是一个可读写的值。对于设置了g性质的正则表 达式来说,该属性存放的是一个整数,它声明了紧接着上次找到的匹配文本的字符的位置。上次匹配的结果是由方法RegExp.exec()或 RegExp.test()找到的,它们都以lastIndex属性所指定的位置作为下... 阅读全文