JavaScript
云淡风清-北京
在战争中学习如何战斗。GitHub:https://github.com/luqin
展开
-
verlet-js:超酷的开源JavaScript物理引擎
verlet-js是一个使用JavaScript编写的物理引擎,支持粒子系统、距离约束、角度约束等,通过verlet-js,你可以在应用中实现一些非常酷的、具备物理特性的效果,比如碰撞、滚动、滑动或弹跳。verlet-js的一些特性如下:Simulation(模拟):包含复合实体的根对象,用于在一个场景中驱动实体的所有物理特性和动画效果Composites(复合实体):用于场景原创 2013-05-08 17:24:55 · 2596 阅读 · 0 评论 -
了解Javascript函数:parseInt()
前些天在使用parseInt()函数时,遇到某些转换时总是不能快速一次性给出答案,索性就研究一番,避免以后再次使用时又得想来想去的。定义1、w3school:parseInt() 函数可解析一个字符串,并返回一个整数。链接:http://www.w3school.com.cn/js/jsref_parseInt.asp http://www.w3school.com.cn/原创 2013-04-16 09:45:39 · 899 阅读 · 0 评论 -
19个带示例的jQuery滚动条插件
1、NiceScroll:可用于桌面、移动与触摸设备的jQuery滚动插件NiceScroll是一个jQuery插件(since 1.5),它有着类似于ios/移动设备的样式。它支持Div、iFrame、一个body的滚动条效果。适用于iOS设备。在线演示2、Lion样式jQuery滚动条:nanoScrollernanoScroller提供提供了一种简便的方式让你的网站拥转载 2013-04-16 16:43:56 · 1994 阅读 · 0 评论 -
21 Useful Scrollbar CSS/JavaScript Styling Tutorials
Posted onAugust 4, 2012 byGinva inDesignwithNo Comments13 Flares13 Flares×Scrollbar is one of element that very often used to navigate the website content. Scroll-bar was also known as a han转载 2013-04-16 16:42:09 · 2160 阅读 · 0 评论 -
深入理解JavaScript系列
深入理解JavaScript系列文章,包括了原创,翻译,转载,整理等各类型文章,如果对你有用,请推荐支持一把,给大叔写作的动力。深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点深入理解JavaScript系列(2):揭秘命名函数表达式深入理解JavaScript系列(3):全面解析Module模式深入理解JavaScript系列(4):立即调原创 2013-04-16 09:20:52 · 1180 阅读 · 2 评论 -
JavaScript 开发规范要求
作为一名开发人员(We前端JavaScript开发),不规范的开发不仅使日后代码维护变的困难,同时也不利于团队的合作,通常还会带来代码安全以及执行效率上的问题。本人在开发工作中就曾与不按规范来开发的同事合作过,与他合作就不能用“愉快”来形容了。现在本人撰写此文的目的除了与大家分享一点点经验外,更多的是希望对未来的合作伙伴能够起到一定的借鉴作用。当然,如果我说的有不科学的地方还希望各路前辈多多指教。原创 2013-04-15 14:46:13 · 974 阅读 · 0 评论 -
处理 JavaScript 异常的一个想法
可能由于网络、浏览器问题、缓存等原因,可能导致线上执行 js 的时候与开发环境并不一样,会抛出异常。js 异常基本上是前端开发工程师的家常便饭。如何记录,并使用它,却很少人关注。最近在考虑一个想法,基本上涉及到两步:收集和使用。 一、收集 对于 error 收集这一块,还是比较方便的,因为在各浏览器中都有一个接口:window.onerror:window.onerror =原创 2013-04-15 14:20:45 · 701 阅读 · 0 评论 -
100多常用的JS语句
1.document.write( " ");输出语句2.JS中的注释为//3.传统的HTML文档顺序是:document- >html- >(head,body) 4.一个浏览器窗口中的DOM顺序是:window- >(navigator,screen,history,location,document) 5.得到表单中元素的名称和值:document.getElem原创 2013-01-23 16:26:42 · 1666 阅读 · 1 评论 -
基于dwr2.0的Push推送技术详细解析以及实例
DWR从2.0开始增加了push功能,也就是在异步传输的情况下可以从Web-Server端发送数据到Browser.我们知道,Web的访问机制天生是设计用来pull数据的,也就是只允许Browser端主动发起请求,server是被动的响应.不允许Server向Browser发出一个connection请求,也就是说没有为server向Browserpush数据提供设计实现.虽然原创 2013-04-23 10:55:31 · 1509 阅读 · 0 评论 -
Javascript执行效率小结
Javascript是一门非常灵活的语言,我们可以随心所欲的书写各种风格的代码,不同风格的代码也必然也会导致执行效率的差异,开发过程中零零散散地接触到许多提高代码性能的方法,整理一下平时比较常见并且容易规避的问题Javascript自身执行效率Javascript中的作用域链、闭包、原型继承、eval等特性,在提供各种神奇功能的同时也带来了各种效率问题,用之不慎就会导致执行效率低下。1原创 2013-04-16 09:47:24 · 853 阅读 · 0 评论 -
[HTML5-SVG]利用 SVG 在 Web 应用程序中创建客户端图表交互
本文给出一个具体的 Web 页面,Web 开发人员及其管理者都将会对它感兴趣。尽管代码编写理解起来足够简单,但是它建模了一个超出传统的基于表单的 Web 应用程序的 GUI 效果。此效果:只依赖于公共标准。执行起来至少跟专有备选方案一样好。开启了全新的团队合作和协作模型。给出一种以前肯定没有明确地做过文档化的实现技术。本文有以下三个目标:从用户角度演示一个特定的标准兼容的基于原创 2013-04-17 15:59:42 · 2572 阅读 · 0 评论 -
[HTML5-SVG]JavaScript 的新领域 - 动态图片处理(SVG)
背景当 JavaScript 被 Netscape 公司发明出来时,它被用来做一些琐细的事情,比如校验表单、计算日期、提示用户;随着 Web 的迅速发展,这种轻巧而灵活的语言被委以越来越多的任务,动态地修改页面内容,一致地处理事件,甚至无刷新地和服务器交互。然而,与传统的客户端编程相比,JavaScript 操作的对象限制在 DOM 模型之内,无法进行图形编程。所以长久以来,我们在设计网页原创 2013-04-17 15:56:07 · 7467 阅读 · 2 评论 -
细数 javascript 容易被忽略的语法陷阱
JavaScript 可算是世界上最流行的编程语言,它曾被 Web 开发设计师贴上噩梦的标签, 虽然真正的噩梦其实是 DOM API,这个被大量的开发与设计师随手拈来增强他们的 Web 前端的脚本语言, 如今越来越被重视,虽则如此,JavaScript 仍然拥有很多让人费解的东西。## 1. 它以 Java 命名,但并不是 Java它最初叫 Mocha, 接着改名为 LiveScript,原创 2013-05-08 17:44:43 · 1165 阅读 · 0 评论 -
写了 10 年 Javascript 未必全了解的连续赋值运算
一、引子var a = {n:1}; a.x = a = {n:2}; alert(a.x); // --> undefined 看 jQuery 源码 时发现的这种写法。 以上第二句 a.x = a = {n:2} 是一个连续赋值表达式。 这个连续赋值表达式在引擎内部究竟发生了什么?是如何解释的?二、猜想猜想1:从左到右赋值,a.x 先赋值为 {n:2},但随后 a原创 2013-05-08 17:36:49 · 1424 阅读 · 3 评论 -
JS1K 2013优胜作品公布 3D蜜蜂仅获亚军
JS1K是一个JavaScript脚本编程竞赛,虽然每届比赛规则会因为主题不同而略有变化,但有一条规则从未变过——参加竞赛的脚本大小必须小于1K即1024Byte,竞赛也因此而得名。近日,JS1K 2013 TOP 10出炉,“3D蜜蜂”却未能上榜,取而代之的是同为Román Cortés作品的“Furbee, get out of that tunnel ASAP!”荣获第二,第一名是P原创 2013-05-07 10:58:19 · 1707 阅读 · 0 评论 -
IE8对JS的数组,采用属性遍历的方法,解析不一样的地方:
以文谨记在此被浏览器版本差异的坑。Array.prototype.Contains = function (str) { if (!str) return false; for (var i = 0; i < this.length; i++) { if (this[i] == str) { return true;原创 2013-05-06 15:10:03 · 2090 阅读 · 0 评论 -
Javascript 风格向导(终结)
序 继续前两篇,这篇作为终结篇。Blocks• 有{}的代码,我们换行处理。// badif (test) return false;// goodif (test) return false;// goodif (test) { return false;}// badfunction() { return false;原创 2013-05-03 09:01:56 · 1014 阅读 · 0 评论 -
Javascript 风格向导
序 大部分针对Javascript最合理的方法归纳。类型• 原始类型:我们可以直接使用值。 ο string ο number ο boolean ο null ο undefinedvar foo = 1, bar = foo;bar = 9;console.log(foo, bar); //原创 2013-05-03 08:49:23 · 1010 阅读 · 0 评论 -
Javascript 风格向导(续)
序 我好长时间没有在推荐栏里出现了,看来上一篇反响不错,故再续上篇。Properties• 当访问属性的时候,我们使用点(.)操作符。var luke = { jedi: true, age: 28};// badvar isJedi = luke['jedi'];// goodvar isJedi = luke.jedi;原创 2013-05-03 08:55:40 · 908 阅读 · 0 评论 -
javascript单元测试及框架介绍
1. 什么是单元测试在计算机编程中,单元测试(又称为模块测试)是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。在过程化编程中,一个单元就是单个程序、函数、过程等;对于面向对象编程,最小单元就是方法,包括基类(超类)、抽象类、或者派生类(子类)中的方法。每个理想的测试案例独立于其它案例;为测试时隔离模块,经常使用stubs、mock原创 2013-04-27 08:50:24 · 3014 阅读 · 0 评论 -
如何编写可维护的JavaScript代码?
PS:本人非前端开发人员,此文为业余兴趣之作,转载请注明出处,谢谢:http://my.oschina.net/feichexia/blog/122217 JavaScript这门编程语言发展至今已经非常流行了,各种名词也层出不穷,我们随便列举下就有一大堆,比如Node.js、jQuery、JavaScript MVC、Backbone.js、AMD、CommonJS、Require转载 2013-04-23 10:54:03 · 1733 阅读 · 0 评论 -
Javascript中最常用的61个经典技巧
1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键no 可用于Table 2. 取消选取、防止复制3. onpaste="return false" 不准粘贴4. oncopy="return false;" oncut="return false;" 防止复制5. IE地址栏前换成自己的图标6.原创 2013-04-11 09:46:30 · 1572 阅读 · 4 评论 -
悟透JavaScript
编程世界里只存在两种基本元素,一个是数据,一个是代码。编程世界就是在数据和代码千丝万缕的纠缠中呈现出无限的生机和活力。 数据天生就是文静的,总想保持自己固有的本色;而代码却天生活泼,总想改变这个世界。你看,数据代码间的关系与物质能量间的关系有着惊人的相似。数据也是有惯性的,如果没有代码来施加外力,她总保持自己原来的状态。而代码就象能量,他存在的唯一目的,就是要努力改变数据原来的状态。原创 2012-09-19 13:54:07 · 48190 阅读 · 19 评论 -
即时通信与浏览器多TAB通信
摘要 浏览器与服务器端的即时通信技术解决了在线聊天等产品中涉及到的复杂网络环境下的问题;采用多tab通信技术来处理现代浏览器的跨页面通信,分析特定疑难问题的技术解决方案。TAG即时通信,多tab通信内容 关键技术消息推送:通过基于web server的长连接技术实现前端多Tab数据交互:借助Flash的Local Connection和ShareObject技术原创 2012-11-29 23:09:08 · 1877 阅读 · 0 评论 -
详解 JavaScript 回调函数
很多人把回调(callback)和异步(asynchronous)的概念混淆在一起了。1、定义回调是什么?看维基的 Callback_(computer_programming) 条目:In computer programming, a callback is a reference to a piece of executable code that is passed a原创 2012-11-29 22:09:03 · 1119 阅读 · 0 评论 -
Java程序员学习Flex和BlazeDS的十三个理由
作者 Ryan Knight译者 沙晓兰发布于 2009年5月18日 上午2时55分 本文列述了13个Java程序员应当学习Flex和BlazeDS的理由,讨论了为什么Flex结合BlazeDS是开发RIA的最佳组合之一。无论是高度交互的网站还是以Java为后端的企业应用,这项组合都是最佳选择之一。更重要的是,这项组合能同时为开发员和企业带来高回报(ROI)。在阐述Java程序员应翻译 2012-10-10 10:05:59 · 1199 阅读 · 0 评论 -
开源中最好的Web开发的资源
文章来源:Best “must know” open sources to build the new Web。个人感觉这个收集贴收集成相当的全。学习HTML 5编程和设计★ HTML5 Rocks : Major Feature Groups 的学习 HTML5 的资源 (HTML5 演示, 教程 ).源码很不错的 HTML5 Dashboard – Mozilla,效果翻译 2012-09-28 17:57:29 · 2741 阅读 · 0 评论 -
js:字符串(string)转json .
第一种方式:使用js函数eval();testJson=eval(testJson);是错误的转换方式。正确的转换方式需要加(): testJson = eval("(" + testJson + ")");eval()的速度非常快,但是他可以编译以及执行任何javaScript程序,所以会存在安全问题。在使用eval()。来源必须是值得信赖的。需要使用更安全的json解析器。在服原创 2012-08-24 16:44:50 · 1009 阅读 · 0 评论 -
JS中decodeURI()与decodeURIComponent()区别
摘要: 本文章就是介绍两个解码的函数,他们就是decodeURI()和decodeURIComponent()函数,这两个函数可以对特定函数生成的密码字符串进行解密操作,就可以生成为未解密的字符串,比较实用,下面本文章就是介绍两个解码的函数,他们就是decodeURI()和decodeURIComponent()函数,这两个函数可以对特定函数生成的密码字符串进行解密操作,就可以生成为未解密原创 2012-08-17 16:23:53 · 76732 阅读 · 4 评论 -
一段网页中可自动点击运行的JS
以下代码可实现鼠标放在该链接后自动点击的效果,至于什么用处大家看着办吧,呵....开动你的大脑吧. var autoclick_ok=false; var cishu = 1function mClk() { if(!autoclick_ok && cishu==1){ var source=event.srcElement;source.click();原创 2011-05-21 23:27:00 · 2656 阅读 · 3 评论 -
前端js也能写算法
html5 迷宫算法body{background-color:green;}#map{marign:100px auto;width:330px;font-family:"微软雅黑";font-size:12px;}#map:after{content:"";clear:both;}#map > div{width:60px;line-height:60px;height:60px;m原创 2012-11-22 09:32:54 · 2237 阅读 · 0 评论 -
JavaScript自己封装ajax的js
/** * 执行基本ajax请求,返回XMLHttpRequest * Ajax.request({ * url * async 是否异步 true(默认) * method 请求方式 POST or GET(默认) * data 请求参数 (键值对字符串) * succe原创 2012-11-22 14:50:26 · 6955 阅读 · 1 评论 -
js 数组Array用法
var arr = new Array(); arr[0] = "aaa"; arr[1] = "bbb"; arr[2] = "ccc"; alert(arr.length); //3 arr.pop(); alert(arr.length); //2 alert(arr[arr.length-1]); //bbb arr.pop(); alert(arr[arr.原创 2012-11-22 09:00:10 · 749 阅读 · 0 评论 -
web前端开发七武器—Jasmine入门教程(上)
武器档案名称:Jasmine用途:javascript单元测试框架下载:http://pivotal.github.com/jasmine/downloads/jasmine-standalone-1.1.0.rc1.zip使用文档:http://github.com/pivotal/jasmine/wiki必备指数:使用难度:页面前端逻辑复杂度与日俱增,前端工程师写出来的javasc翻译 2013-03-21 15:36:25 · 36927 阅读 · 3 评论 -
JavaScript宝座:七大框架论剑
英文原文:Rich JavaScript Applications – the Seven Frameworks 一周前,Throne of JS 大会在多伦多召开,这应该是我参加过的最有料也最不一样的一次大会。大会官网如是说:加载整个页面,然后再“渐进增强”以添加动态行为,这种构建 Web 应用的方式已经不够好了。要想让应用加载快,反应灵敏,而且又引领潮流,必须彻翻译 2013-03-21 15:13:22 · 3599 阅读 · 0 评论 -
js数组 sort方法的分析
javascript 中 Array.sort()方法是用来对数组项进行排序的 ,默认情况下是进行升序排列,实例代码如下: var arrA = [6,2,4,3,5,1]; arrA.sort(); document.writeln(arrA);//结果是:1,2,3,4,5,6 sort() 方法可以接受一个 方法为参数 ,这个方法有两个参数原创 2013-02-21 09:38:19 · 1001 阅读 · 0 评论 -
js版俄罗斯方块设计思想及实现
俄罗斯方块方块是小时候的一个回忆,从最开始的掌上的黑白游戏机,到电视游戏机,到电脑,无不有它的痕迹,今天我们来一起重温它的一种实现方法,也算是整理一下我的思路吧......1.以中心点坐标代替整个方块2.以数学坐标点代表实际坐标3.统一冲突检测方法问题分析:俄罗斯方块就是一个个方块从上到下的落下,固定,当一行满的时候就消去这一行,就类与对象分析设计思想,我们很容易想到,要创原创 2013-01-18 09:50:33 · 7442 阅读 · 0 评论 -
JS 技巧积累
判断是否存在于var a = "b" in c;字符串转数组新写法var split = "split", S = " ", events = "click dblclick mousedown mousemove mouseout mouseover mouseup touchstart touchmove touchend touchcancel"[split原创 2013-02-01 15:33:33 · 821 阅读 · 0 评论 -
AJAX + SVG 实现实时监控图表
简介: AJAX 已经有很多文章介绍它的原理及其应用了。但是遗憾的是现在并没有很多结合实际项目应用。本文结合实际项目中的应用来讲述利用 AJAX 和SVG 技术如何创建各种激动人心的功能,并附带可以运行的例子和源代码。前言AJAX 已经有很多文章介绍它的原理及其应用了。但是遗憾的是现在并没有很多结合实际项目应用。本文结合实际项目中的应用来讲述利用 AJAX 和SVG 技术如何创建各种激动人原创 2013-01-17 16:43:33 · 8064 阅读 · 3 评论 -
你真的已经搞懂JavaScript了吗?
昨天在著名前端架构师Baranovskiy的博客中看到一个帖子《So, you think you know JavaScript?》题目一:if (!("a" in window)) { var a = 1;}alert(a);题目二:var a = 1, b = function a(x) { x && a(--x);翻译 2013-01-31 10:28:51 · 889 阅读 · 0 评论