随笔分类 - javascript
摘要:一、commonJS模块加载规范 CommonJS规范加载模块是同步的,也就是说,只有加载完成,才能执行后面的操作。由于Node.js主要用于服务器编程,模块文件一般都已经存在于本地硬盘,所以加载起来比较快,不用考虑非同步加载的方式,所以CommonJS规范比较适用。浏览器端一般采用AMD模块加载方
阅读全文
摘要:一、和window有关的宽高 window.innerWidth:浏览器窗口宽度 window.innerHeight:浏览器窗口高度(不包括导航,工具栏等的高度) window.outerWidth:浏览器窗口宽度(很多时候 window.innerWidth) window.outerHeigh
阅读全文
摘要:****转载自自己发表于牛人部落专栏的文章**** 一、前言 本文记录了自己利用原生javascript构建自己的动画库的过程,在不断改进的过程中,实现以下动画效果: 针对同一个dom元素上相继发生的动画,针对以下功能,尝试实现方案,(从一个元素向多个元素的拓展并不难,这里不做深入探究): 功能1.
阅读全文
摘要:一、css部分 1.如何实现sticky footer布局; http://www.open-open.com/lib/view/open1487572092207.html 2.、如何实现一行文本太多的时候适用省略号 3、如何实现背景图片的滤镜和模糊效果 可以给背景设置为透明度,来实现滤镜 同时添
阅读全文
摘要:为了将值转换为基本类型值(string,number,boolean,null,undefined),抽象操作ToPrimitive会首先检查该值有没有valueOf()方法,如果有并且返回基本类型值,那么使用该值进行强制类型转换,如果没有就使用toString()的返回值进行强制类型转换。如果va
阅读全文
摘要:在实际开发中,很多时候需要知道某个节点是不是另一个节点的后代。很多浏览器提供了contains方法,如: DOM3提供的compareDocumentPosition方法也可以判断元素位置关系,结果如下: 1 无关 2 居前 4 居后 8 包含 16 被包含 因此跨浏览器的contains写法如下:
阅读全文
摘要:表单元素除了可以运用上述所有DOM相关操作外,为了简化,还有一系列自己的属性和方法。 表单除了支持鼠标,键盘,更改和html时间之外,还支持一些表单特有的事件,如focus,change,blur等等。 一、form表单元素 1.获取表单上的form元素 1)document.getElementB
阅读全文
摘要:浏览器对象模型BOM,提供了访问浏览器的接口。这些功能大多和网页内容无关,多年来,由于缺乏规范导致BOM中的不同方法在不同浏览器中的实现有所差异,直到html5,才将BOM的主要方面纳入规范。 BOM常用的特性包括: 一、window对象 window对象在浏览器中具有双重角色:它既是ECMAscr
阅读全文
摘要:javascript中,Date代表日期对象,其常见的用法如下: 一、Date的构造函数 有四种形式的Date构造函数,详见下面代码的注释: 二、返回日期对应的毫秒数 1.Date.parse() Date.parse()接收一个日期字符串,返回该日期对应的毫秒数。 2.Date.UTC() Dat
阅读全文
摘要:一个完整的javascript的实现应当由三部分构成: 1.核心(ECMAscript) ECMAscript与web浏览器并没有依赖关系,web浏览器只是ECMAscript实现可能的宿主环境之一,宿主环境不仅提供ECMAscript实现,也提供该语言的扩展。其他宿主环境包括nodeJs等。ECM
阅读全文
摘要:一、高性能网站 《高性能网站建设指南》一书中提出用户只有10%-20%最终用户响应时间是花在从web服务器获取html文档并传送到浏览器中,80%的时间都花在了等待页面组件中,由此提出了构建高性能网站的14个规则。按照优先级排序依次是: 1.减少http请求数 直接方法是减少组件的个数,由此来减少h
阅读全文
摘要:与jQuery事件模块的其他事件不同,其他事件是通过数据缓存实现的,而初始化事件,jQuery.ready则是通过回调函数列表实现的。$()的参数如果是函数就向回调函数列表中添加回调函数,同时为DOMContentLoaded注册事件,在注册的事件处理函数中,触发resolve事件。 以下是对jQu
阅读全文
摘要:一、javascript中的属性、方法 1.首先,关于javascript中的函数/“方法”,说明两点: 1)如果访问的对象属性是一个函数,有些开发者容易认为该函数属于这个对象,因此把“属性访问”叫做“方法访问”,而实际上,函数永远不会属于一个对象,对象拥有的,只是函数的引用。确实,有些函数体内部使
阅读全文
摘要:一、前言 闭包是基于词法作用域( 和动态作用域对应,词法作用域是由你写代码时,将变量写在哪里来决定的,因此当词法分析器处理代码时,会保持作用)书写代码时所产生的自然结果,甚至不需要为了利用闭包而有意地创建闭包。闭包的创建和使用在动态语言的代码中随处可见。你缺少的只是识别,拥抱和使用闭包的思维。 当函
阅读全文
摘要:http://www.cnblogs.com/chuaWeb/p/jQuery-1-9-1-catalog.html jQuery事件系统并没有将事件监听函数直接绑定在DOM元素上,而是基于事件缓存模块来管理监听函数的。 考虑一下为何这么做? 1)为了在事件中加入对命名空间的支持; 2)为了加入事件
阅读全文
摘要:一、前言 关于正则表达式自身的语法这里不做过多介绍(详情可参见http://www.php100.com/manual/unze.html),这里仅仅解释javascript中和正则表达式相关的几个方法的使用(http://www.w3school.com.cn/jsref/jsref_obj_re
阅读全文
摘要:一、javascript中的假值 jQuery中拥有一组数量奇大的假值,包括 0,NaN(非数),''(空字符串),false,null,undefined 这些值在if判断中全部等于假,但这些值彼此是不==的。注意空数组[],空对象{}在if判断中是为真的。 二、javascript中的数据类型
阅读全文
摘要:一、jQuery属性模块整体介绍 jQuery的属性操作模块分四个部分:html属性操作,dom属性操作,类样式操作,和值操作。 html属性操作(setAttribute/getAttribute)是指对html文档中的属性进行读取,设置和移除操作,其中,属性名一般是小写的联词符式的字符串,属性值
阅读全文
摘要:一、jQuery种的队列模块 jQuery的队列模块主要是为动画模块EFFECTS提供支持,单独抽取出一个命名空间是为了使程序员可以自定义自己的队列。 具体API的调用方法可以参考这篇博客http://snandy.iteye.com/blog/1978428 二、队列模块的代码结构 低级方法jQu
阅读全文
摘要:一、jQuery数据缓存基本原理 jQuery数据缓存就两个全局Data对象,data_user以及data_priv; 这两个对象分别用于缓存用户自定义数据和内部数据; 以data_user为例,所有用户自定义数据都被保存在这个对象的cache属性下,cache在此姑且称之为自定义数据缓存; 自定
阅读全文
浙公网安备 33010602011771号