javascript
文章平均质量分 68
灵影
这个作者很懒,什么都没留下…
展开
-
ECMASCRIPT-6
本文讲述了ECMASCRIPT6的重大的新特性,新变化:let和const关键字变量解构赋值具体可参考原创 2015-01-16 20:34:17 · 910 阅读 · 0 评论 -
JS如何在不同浏览器下实现全屏
手动将浏览器全屏,大家都知道非常简单,按F11就OK了,但如果要用JS实现浏览器全屏了?对于IE浏览器实现全屏非常简单,因为可以调用ActiveXObject对象。非IE的浏览器就无法办到了,幸好,如今是html5的时代了,我们可以使用html5提供的api实现全屏功能。直接上代码:/** * 浏览器全屏api的判断 * @returns */function fsapiFun()原创 2013-06-09 15:48:45 · 2555 阅读 · 0 评论 -
深入理解javascript作用域和作用域链
作用域是JavaScript最重要的概念之一,想要学好JavaScript就需要理解JavaScript作用域和作用域链的工作原理。今天这篇文章对JavaScript作用域和作用域链作简单的介绍,希望能帮助大家更好的学习JavaScript。JavaScript作用域任何程序设计语言都有作用域的概念,简单的说,作用域就是变量与函数的可访问范围,即作用域控制着变量与函数的可见性和生命转载 2013-06-08 22:25:28 · 539 阅读 · 0 评论 -
区分JS中的null,undefined,'',0,false
在程序语言中定义的各种各样的数据类型中,我们都会为其定义一个"空值"或"假值",比如对象类型的空值null,.NET Framework中数据库字段的空值DBNull,boolean类型的假值false等等。在JavaScript中也有很多种的"空值"和"假值",那么它们都有什么共同点和不同点呢? 其实标题里面我已经列出了JavaScript中所有的"空值"和"假值",除了boole转载 2013-05-30 17:22:32 · 469 阅读 · 0 评论 -
Facebook开源JavaScript库:React
React是Facebook开源的JavaScript库,采用声明式范例,可以传递声明代码,最大限度地减少与DOM的交互。转载 2013-05-30 19:50:55 · 623 阅读 · 0 评论 -
一个轻量级的JavaScript库:Reactor.js
Reactor是一个针对reactive programming的轻量级JavaScript库,它提供了reative变量,这些变量会根据需求进行自动更新。链接地址:http://www.csdn.net/article/2013-05-20/2815349-reactor.js转载 2013-05-20 18:26:06 · 1071 阅读 · 0 评论 -
ajax同步和异步的差异
aajax同步和异步的差异, 先看2段代码: 代码一: Js代码 Synchronize = function(url,param) { function createXhrObject() { var http; var activeX = [ "MSXML2.XMLHTTP.3.0", "MSXML转载 2013-04-26 09:17:53 · 637 阅读 · 0 评论 -
JavaScript的同源策略
同源策略阻止从一个源加载的文档或脚本获取或设置另一个源加载的文档的属性。这个策略可以追溯到 Netscape Navigator 2.0。如果两个页面的协议、端口(如果指明了的话)和主机名都相同,Mozilla 认为这两个页面拥有相同的源。下表给出了相对http://store.company.com/dir/page.html同源检测的结果:URL结果转载 2013-03-27 14:33:27 · 518 阅读 · 0 评论 -
优化innerHTML操作(提高代码执行效率)
数现代浏览器都实现了innerHTML操作,它的方便性让我们爱不释手,但如果使用不当,很容易出现效率问题,本文通过一个例子来说明如何优化innerHTML操作。例子:我们要实现的效果是当用户点击鼠标的时候,就在旧数据上追加若干新数据。 如果使用标准DOM的话,完整代码如下: test data document.onmousedown = functio转载 2013-02-22 16:34:31 · 584 阅读 · 0 评论 -
jquery整体架构分析
【参考书籍:>,尽信书不如无书】任何复杂的技术都是从最简单的问题开始的,如果你被jQuery几千行庞杂结构的源代码所困惑,那么建议你阅读本文,我们将探索jQuery是如何从最简单的问题开始,并逐步实现羽翼渐丰的演变过程,从jQuery核心技术的还原过程来理解jQuery框架的搭建原理。原型继承在JavaScript中,函数无处不在,它可以归置代码段,把相对独立的功能封装转载 2013-02-22 08:56:17 · 434 阅读 · 0 评论 -
javascript设计模式----单例模式
《parctical common lisp》的作者曾说,如果你需要一种模式,那一定是哪里出了问题。他所说的问题是指因为语言的天生缺陷,不得不去寻求和总结一种通用的解决方案。不管是弱类型或强类型,静态或动态语言,命令式或说明式语言、每种语言都有天生的优缺点。一个牙买加运动员, 在短跑甚至拳击方面有一些优势,在练瑜伽上就欠缺一些。术士和暗影牧师很容易成为一个出色的辅助,而一个背着梅肯转载 2013-01-18 13:39:27 · 735 阅读 · 0 评论 -
javascript的函数节流
介绍前,先说下背景。在前端开发中,有时会为页面绑定resize事件,或者为一个页面元素绑定拖拽事件(其核心就是绑定mousemove),这种事件有一个特点,就是用户不必特地捣乱,他在一个正常的操作中,都有可能在一个短的时间内触发非常多次事件绑定程序。而大家知道,DOM操作时很消耗性能的,这个时候,如果你为这些事件绑定一些操作DOM节点的操作的话,那就会引发大量的计算,在用户看来,页面可能就一时间没转载 2013-01-18 10:35:12 · 509 阅读 · 0 评论 -
使用createDocumentFragment()方法---减少回流,提高性能
在《javascript高级程序设计》一书的6.3.5:创建和操作节点一节中,介绍了几种动态创建html节点的方法,其中有以下几种常见方法:· crateAttribute(name): 用指定名称name创建特性节点· createComment(text): 创建带文本text的注释节点· createDocumentFragment():转载 2013-01-14 10:05:22 · 937 阅读 · 0 评论 -
IE和firefox下event区别
如果在使用javascript的时候涉及到event处理,就需要知道event在不同的浏览器中的差异,因为javascript的事件模型有三种,它们分别是NN4、IE4+和W3C/Safari;这也造成了在不同的浏览器中处理event的差异,这里结合一些零碎的代码来说明如何做到event在IE4+和Firefox下的正常工作。首先看如下代码:function doEventThing(ev转载 2013-06-08 09:35:57 · 483 阅读 · 0 评论 -
JS操作cookie
在Javascript脚本里,一个cookie 实际就是一个字符串属性。当你读取cookie的值时,就得到一个字符串,里面当前WEB页使用的所有cookies的名称和值。每个cookie除了 name名称和value值这两个属性以外,还有四个属性。这些属性是: expires过期时间、 path路径、 domain域、以及 secure安全。Expires – 过期时间。指定cookie的转载 2013-07-08 16:55:50 · 446 阅读 · 0 评论 -
JS模块化开发-CMD、AMD模式
JS模块化开发是目前非常流行的JS开发模式,目前模块化开发主要有两种形式,一种是以CommonJS为代表的CMD(Common Module Definition--通用模块定义)模式,一种是以require.js为代表的AMD(Asynchronous Module Definition--异步模块定义)模式。AMD模式,它采用异步模式加载模块,模块的加载不影响后面的代码运行,所有依赖这原创 2013-11-14 21:35:36 · 4268 阅读 · 0 评论 -
form表单的onsubmit和submit
onsubmit:一般会用在表单验证中,当返回false时,会阻止表单提交,返回true,则表单提交成功。submit:表单提交方法。关于这两个方法的用法,却有几个让人迷惑不解的地方,看下面这个表单:当点击提交按钮时,会触发onsubmit方法,弹出alert框,返回false,此时阻止了表单提交。此时点击提交,却不会触发onsubmit方法,表单成功提原创 2013-07-09 13:43:34 · 4505 阅读 · 0 评论 -
mouseover,mouseout,mouseenter,mouseleave区别
关于这四者区别:mouseover,mouseout支持冒泡mouseenter,mouseleave原创 2014-07-04 12:55:25 · 508 阅读 · 0 评论 -
了解ECMA5.0的use strict
这里有篇文章写的不错:请点击原创 2014-05-24 22:43:37 · 502 阅读 · 0 评论 -
深入浅出Node.js
http://www.infoq.com/cn/minibooks/nodejs?utm_source=infoq&utm_medium=related_content_link&utm_campaign=relatedContent_articles_clk , InfoQ介绍node.js原创 2014-03-20 14:33:56 · 733 阅读 · 0 评论 -
Bootstrap创始人Mark Otto发布了Bootstrap编码规范
http://codeguide.bootcss.com/ Bootstrap创始人Mark Otto发布了Bootstrap编码规范,针对HTMl、CSS编码都有详细的总结、指导,发布之后迅速收获了2.5k star。这是前端开发者不能不研读的规范!!!原创 2014-03-30 21:10:17 · 2408 阅读 · 0 评论 -
Dojo-最佳实践如何防止浏览器内存泄露
http://www.ibm.com/developerworks/cn/web/1205_hukuang_dojomemleak/ 如何防止浏览器内存泄露原创 2014-03-06 23:36:57 · 519 阅读 · 0 评论 -
cookie、localStorage、sessionStorage的有效期和作用域问题
。。。。待续原创 2013-11-14 22:15:38 · 35039 阅读 · 3 评论 -
JS获取浏览器位置,屏幕高度、宽度
IE中:document.body.clientWidth ==> BODY对象宽度document.body.clientHeight ==> BODY对象高度document.documentElement.clientWidth ==> 可见区域宽度document.documentElement.clientHeight ==> 可见区域高度Fire转载 2013-09-09 15:20:32 · 754 阅读 · 0 评论 -
IE浏览器的“浏览器模式”和“文档模式”
1.浏览器模式与文档模式概念在较新的IE浏览器中(如IE8, IE9, IE10),为了解决兼容性的问题,引入了浏览器模式和文档模式两个概念,浏览网页时可以通过按F12键看到这两种模式。 浏览器模式的主要作用是为兼容较早版本的IE,它会控制浏览器发出的UserAgent,表示以哪个版本的浏览器发出请求,以此来允许为某个特定IE版本设计的代码正确执行(举例来说:有些代码真是判原创 2013-07-06 15:03:25 · 877 阅读 · 0 评论 -
浏览器requestAnimationFrame动画
http://www.cnblogs.com/rubylouvre/archive/2011/08/22/2148797.htmlhttp://blog.sina.com.cn/s/blog_6d48e77101018fwd.html转载 2013-07-16 13:46:13 · 635 阅读 · 0 评论 -
javascript的反柯里化
本文主要讲了JavaScript中科里化和反科里化this的方法.话题来自于Brendan Eich(JavaScript之父)的一个tweet.1.反科里化(Uncurrying)this反科里化this的意思是:把一个签名如下的方法:obj.foo(arg1, arg2)转换成另外一个签名如下的函数:foo(obj, arg1, arg2)转载 2013-01-16 16:32:54 · 570 阅读 · 0 评论 -
理解JavaScript中的arguments,callee,caller,apply 和call
一、Arguments该对象代表正在执行的函数和调用他的函数的参数。[function.]arguments[n]参数function :选项。当前正在执行的 Function 对象的名字。n :选项。要传递给 Function 对象的从0开始的参数值索引。说明:Arguments是进行函数调用时,除了指定的参数外,还另外创建的一个隐藏对象。Arguments是个类似数组但转载 2013-01-16 13:42:26 · 347 阅读 · 0 评论 -
对frameset、frame、iframe的js操作
对frameset、frame、iframe的js操作框架编程概述一个HTML页面可以有一个或多个子框架,这些子框架以来标记,用来显示一个独立的HTML页面。这里所讲的框架编程包括框架的自我控制以及框架之间的互相访问,例如从一个框架中引用另一个框架中的JavaScript变量、调用其他框架内的函数、控制另一个框架中表单的行为等。框架间的互相引用一个页面中的所有框架以集合的形式作转载 2013-01-15 14:50:28 · 640 阅读 · 0 评论 -
HTTP 状态代码
HTTP 状态代码如果向您的服务器发出了某项请求要求显示您网站上的某个网页(例如,当用户通过浏览器访问您的网页或在 Googlebot 抓取该网页时),那么,您的服务器会返回 HTTP 状态代码以响应该请求。此状态代码提供了有关请求状态的信息,且为 Googlebot 提供了有关您网站和请求的网页的信息。一些常见的状态代码为:200 - 服务器成功返回网页404 -转载 2012-10-25 13:29:54 · 358 阅读 · 0 评论 -
js闭包与垃圾回收
闭包官方解释:所谓“闭包”,指的是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。个人解释:一个函数a内部包含函数b,这个b即是闭包。调用b的时候,b的作用域链可以找到a的变量对象。先看个最简单的范例:function a(){var v = 1;return function(){co转载 2012-10-24 10:42:55 · 801 阅读 · 0 评论 -
关于数字的正则表达式
关于数字的正则表达式: 验证数字最简单正则表达式大全 输入完按回车后即可验证!)正整数: 负整数: 整 数: 正小数: 负小数: 小 数: 实 数: 保留1位小数:保留2位小数:保留3位小数:转载 2012-09-19 15:29:21 · 348 阅读 · 0 评论 -
js事件列表
javascript事件列表解说事件浏览器支持解说一般事件onclickIE3、N2鼠标点击时触发此事件ondblclickIE4、N4鼠标双击时触发此事件onmousedownIE4、N4按下鼠标时触发此事件onmouseupIE4、N4鼠标按下后松开鼠标时触发此事件onmouse转载 2012-10-10 10:57:16 · 370 阅读 · 0 评论 -
点击链接执行js函数探讨
在页面中,我们有时候想有一个特效链接,但该链接并不是跳转到某个位置,而是执行一个js函数,这时就需要用脚本,改造标签。标签中有一个属性href,指Hypertext Reference的缩写,意思是超文本引用。使用它就可以出现链接的效果。href的用法如下:1.内部连接:name2.锚记:name name3.外部链接:name Google原创 2012-09-26 14:07:44 · 1978 阅读 · 0 评论 -
动态加载js,并执行回调函数
关于在javascript里面加载其它的js文件的问题可能很多人都遇到过,但很多朋友可能并不知道怎么判断我们要加载的js文件是否加载完成,如果没有加载完成我们就调用文件里面的函数是不会成功的。本文讲解怎么在js中加载其它js文件并在加载完成后执行回调函数。我们可以动态的创建 元素,然后通过更改它的 src 属性来加载脚本,但是怎么知道这个脚本文件加载完成了呢,因为我们有些函数需要在脚本加转载 2012-07-11 16:46:16 · 2794 阅读 · 0 评论 -
javaScripte--Oriented Object(two)
这个系列的第一部分,主要介绍了如何"封装"数据和方法,以及如何从原型对象生成实例。今天要介绍的是,如何生成一个"继承"多个对象的实例。比如,现在有一个"动物"对象的构造函数, function Animal(){ this.species = "动物"; }还有一个"猫"对象的构造函数, functio转载 2012-07-05 17:21:40 · 367 阅读 · 0 评论 -
javaScript --oriented Object(one)
学习Javascript,最难的地方是什么?我觉得,Object(对象)最难。因为Javascript的Object模型很独特,和其他语言都不一样,初学者不容易掌握。下面就是我的学习笔记,希望对大家学习这个部分有所帮助。我主要参考了以下两本书籍:《面向对象的Javascript》(Object-Oriented JavaScript)《J转载 2012-07-05 17:19:54 · 432 阅读 · 0 评论 -
javaScript中如何定义对象
先写一个函数,下面几个方式会用到 Javascript代码 function showSalary(){ alert(this.salary); } 工厂方式 先创建对象,然后添加属性和方法,不需要用NEW创建对象, 如果把函数写在内部,每次调用都会创建新的函数,放在外面,封装性不好 Jav转载 2012-07-05 11:38:36 · 469 阅读 · 0 评论 -
JS正则表达式详解
什么是正则表达式?这个问题可以参见:“正则表达式30分钟入门教程”,很多编程语言都支持正则表达式,本文仅仅讨论JavaScript中的正则表达式。创建一个正则表达式第一种方法:var reg = /pattern/;第二种方法:var reg = new RegExp('pattern');正则表达式的exec方法简介语法:reg.ex转载 2012-07-04 16:22:43 · 563 阅读 · 0 评论 -
js二维数组定义与排序方法
js二维数组定义与排序方法var xxx=[[1,2],[a,b]];alert(xxx[1][0]);方法二var xxx=new array(new array(1,2),new array("a","b"));alert(xxx[1][0]);实例三二维数组声明方式是下面这样的: var images=new array();转载 2012-04-14 17:42:48 · 1600 阅读 · 0 评论