JavaScript
文章平均质量分 74
BorisHuai
Web前端工程师,Augmentum。
展开
-
JavaScript编码解码详细介绍
1. escape()escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码+/-*_.@。其他所有的字符都会被转义序列替换。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)。比如,空原创 2012-12-24 14:24:56 · 1312 阅读 · 0 评论 -
前端知识体系及修炼攻略
前端简介Web前端开发工程师是一个很新的职业,在国内乃至国际上真正开始受到重视的时间不超过5年。Web前端开发是从网页制作演变而来的,名称上有很明显的时代特征。随着人们对用户体验的要求越来越高,前端开发的技术难度越来越大,Web前端开发工程师这一职业终于从设计和制作不分的局面中独立出来。早期的前端其实就是Table布局,后来发展到所谓的Div + CSS网站重构,再到现在的让人眼花缭乱的各原创 2013-03-15 10:29:12 · 48514 阅读 · 11 评论 -
jQuery Animation实现CSS3动画
CSS3好多效果因为它的值不是数值的,所以是没有办法直接通过jQuery animate()方法实现动画的。如translate(), rotate(), scale(), skew(), matrix(), rotateX(), rotateY()等方法,这些方法的一个特点就是它们的值是字符和数字混合在一起的。因此我们是不可以直接用animate()方法来动态地修改它们的值来实现动画的效果。原创 2013-08-13 22:34:43 · 7133 阅读 · 0 评论 -
Web页面Repaint和Reflow
1. Repaintrepaint(重绘)是在一个元素的外观被改变,但没有改变布局的情况下发生,如改变visibility、outline、前景色。当repaint发生时,浏览器会验证DOM树上的所有其它结点的visibility属性。2. Reflow如果变化涉及元素布局 (如 width), 浏览器则抛弃原有属性, 重新计算并把结果传递给 render 以重新描绘页面元素, 此过程原创 2013-03-14 10:41:02 · 3083 阅读 · 0 评论 -
深入理解JavaScript运算符
++运算符可以进行加法运算或字符串连接。如果你想要的是加法运算,请确保两个表达式的值都是数字。typeof好多人认为typeof是一个函数,其实它是一个操作符,调用方法是typeof hello, 当然函数式的调用方法也可以: typeof(hello),这里还是推荐操作符式的调用方式。typeof运算符用来判断变量的类型,它的返回值有"number", "string", "bo原创 2013-02-26 13:51:13 · 2081 阅读 · 0 评论 -
在IE中关于Radio和Checkbox在JQuery中的change事件的立即触发
在JQuery中,当给radio或checkbox添加一个change事件时,如果它的值发生变化就会触发change事件,就如同我们在HTML中写入下代码:, 而我们用JQuery的代码如下: $(document).ready(function(){ $("testCheckbox").change(function() { alert("Option chang原创 2009-12-08 22:01:00 · 6334 阅读 · 3 评论 -
JavaScript构造函数原理
构造函数的原理JavaScript语言是一门面向对象的语言,但是JavaScript中并没有类的概念的。于是JavaScript采用构造函数的方式来模拟类的效果,即我们通过函数来创建对象。这也证明了函数在JavaScript中具有非常重要的地位。举个例子: var Book = function(name, price) { this.name =原创 2012-10-26 14:49:29 · 2405 阅读 · 0 评论 -
图片的预载入(Preload)与延迟载入(Lazyload)
图片相对于HTML,CSS,JavaScript来说都是比较大的,因此图片经常会影响到网页的加载速度,影响用户体验。如果图片过多,则浏览器则需要花大量的时间才能把所有的图片载入完毕,而对于图片信息非常重要的页面,用户不得不等待图片完全载入了才能浏览页面。因此就有人想出了预载入图片技术来提高响应速度以及延迟载入技术来解决图片过多问题。预载入图片(Preload)预载入图片主要是为了响应速度问原创 2012-10-26 14:19:26 · 2531 阅读 · 0 评论 -
JavaScript模块化开发探讨
我们以前是怎么开发JavaScript代码的在过去由于应用复杂度不高,JavaScript之于web页面一直处于一种辅助程序的地位,甚至谈不上是一门应用开发语言。而且多数网站都是一次性应用,规模较小,相对于可维护性,开发速度更重要。大部分时候是没有专业前端开发人员的,都是做后台的人查查手册就开始干活了。很多时候所有的JavaScript代码放在同一个文件中,所有代码耦合在一起,无法复用。所原创 2012-10-30 12:23:42 · 1764 阅读 · 1 评论 -
JavaScript单元测试框架介绍
什么是单元测试在计算机编程中,单元测试(又称为模块测试)是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。在过程化编程中,一个单元就是单个程序、函数、过程等;对于面向对象编程,最小单元就是方法,包括基类(超类)、抽象类、或者派生类(子类)中的方法。每个理想的测试案例独立于其它案例;为测试时隔离模块,经常使用stubs、mock 或fake等测试原创 2012-11-01 16:56:23 · 2163 阅读 · 0 评论 -
一种通用的iframe跨域通信方法
同源策略简介如果两个页面的协议、端口(如果指明了的话)和主机名都相同则两个页面拥有相同的源。同源策略阻止从一个源加载的文档或脚本获取或设置另一个源加载的文档的属性。这个策略可以追溯到 Netscape Navigator 2.0。但很多时候两个不同域的页面之间需要进行通信,这就产生了跨域通信的问题了,关于跨域的文章非常多,可以参考10种方式实现跨域资源的共享,下面和大家分享一下我们项目中是原创 2012-11-06 13:57:50 · 3245 阅读 · 1 评论 -
JavaScript单元测试之Qunit
QUnit框架介绍QUnit是jQuery团队开发的JavaScript单元测试工具,目前所有的JQuery代码都使用QUnit进行测试,并且JQuery开发团队将他们的使用QUnit写的测试代码都发布出来了,光凭这一点就足以QUnit的强大,足以胜任大部分JavaScript单元测试。QUnit的优点:使用起来非常方便,有漂亮的外观和完整的测试功能(包括异步测试),这是见过最漂亮原创 2012-11-01 16:58:24 · 3024 阅读 · 0 评论 -
基于JavaScript纯前端的国际化解决方案
前言本文讨论了基于纯前端的国际化多语言的解决方案,不依赖于任何后台技术。即只用HTML + JavaScript来实现国际化的方案。该方案参考了FCKEditor的实现机制,其实很多富文本编辑器都采用了类似的思路。实现方式1. 将各国语言翻译好之后放在一个js文件里以JSON格式保存,或者每个语言一个js文件也可以,比如zh-CN.js,en-US.js等。2. 将所有需要翻译的文原创 2012-11-06 14:02:19 · 3367 阅读 · 0 评论 -
JavaScript程序员必备的5个debug技巧
我一直使用printf调试程序,一般来说都是比较顺利,但有时候,你会发现需要更好的方法。下面几个JavaScript技巧相信你一定会觉得十分有用:1. debugger;我以前也说过,你可以在JavaScript代码中加入一句debugger;来手工造成一个断点效果。需要带有条件的断点吗?你只需要用if语句包围它:if (somethingHappens) {d转载 2014-03-04 10:00:26 · 2775 阅读 · 0 评论