摘要:正则表达式30分钟入门教程目录本文目标如何使用本教程正则表达式到底是什么东西?入门测试正则表达式元字符字符转义重复字符类分枝条件反义分组后向引用零宽断言负向零宽断言注释贪婪与懒惰处理选项平衡组/递归匹配还有些什么东西没提到本文目标30分钟内让你明白正则表达式是什么,并对它有一些基本的了解,让你可以在自己的程序或网页里使用它。如何使用本教程最重要的是——请给我30分钟,如果你没有使用正则表达式的经验,请不要试图在30秒内入门——除非你是超人 :)别被下面那些复杂的表达式吓倒,只要跟着我一步一步来,你会发现正则表达式其实并没有你想像中的那么困难。当然,如果你看完了这篇教程之后,发现自己明白了很多, 阅读全文
【屌丝之作】3D遥控坦克大战
2013-06-03 23:55 by Barret李靖, 9009 阅读, 15 推荐, 收藏, 编辑
摘要:昨天参加了hack day的一个比赛,赛制大致是:24小时,自由组队2~4人,任意发挥。运气比较好,拿了第三名和最佳创意奖。建议先看看这个demo,bug是有的,chrome下玩玩,测试测试就行,O(∩_∩)O~ DEMO:http://qianduannotes.sinaapp.com/3dtank/html/index.html基本效果:关于懒得去SAE上折腾,没把那另外一半的功能补上,不过我还是介绍下这几个没补上功能吧。 1. 音效。开始音乐是比较古老的坦克大战开机音乐。 ① 开始音效 点击播放 ② 发子弹 点击播放 ③ 击中坦克点击播放 ④ 爆炸 点击... 阅读全文
实现Javascript异步编程的4种方法
2013-05-14 14:52 by Barret李靖, 787 阅读, 1 推荐, 收藏, 编辑
摘要:你可能知道,Javascript语言的执行环境是"单线程"(single thread)。所谓"单线程",就是指一次只能完成一件任务。如果有多个任务,就必须排队,前面一个任务完成,再执行后面一个任务,以此类推。这种模式的好处是实现起来比较简单,执行环境相对单纯;坏处是只要有一个任务耗时很长,后面的任务都必须排队等着,会拖延整个程序的执行。常见的浏览器无响应(假死),往往就是因为某一段Javascript代码长时间运行(比如死循环),导致整个页面卡在这个地方,其他任务无法执行。为了解决这个问题,Javascript语言将任务的执行模式分成两种:同步(Syn 阅读全文
浅谈HTTP中Get与Post的区别
2013-05-05 20:40 by Barret李靖, 1471 阅读, 1 推荐, 收藏, 编辑
摘要:Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的查,改,增,删4个操作。到这里,大家应该有个大概的了解了,GET一般用于获取/查询资源信息,而POST一般用于更新资源信息。 1.根据HTTP规范,GET用于信息获取,而且应该是安全的和幂等的。 (1).所谓安全的意味着该操作用于获取信息而非修改信息。换句话说,GET 请求一般不应产生副作用。就是说,它仅仅是获取资源信息,就像数据... 阅读全文
Javascript综合应用小案例(续)
2013-05-05 00:41 by Barret李靖, 1669 阅读, 0 推荐, 收藏, 编辑
摘要:上一篇文章,弄了一个 取词和 标红 功能的小应用,但是存在一些bug,今天修修补补,顺便也把ajax部分补上了~Demo地址::http://qianduannotes.sinaapp.com/getKeyword/代码部分:var GetKeywords = { str: "", limit: 11, keywords:[], url: "./tool.php", //page id getId: function(){ this.id = this._("wp").getAttribute("data-page" 阅读全文
Javascript综合应用小案例
2013-05-04 02:38 by Barret李靖, 2383 阅读, 1 推荐, 收藏, 编辑
摘要:按需求弄了一个 取词 以及 标红 的小应用。先上demo :http://qianduannotes.sinaapp.com/getKeyword/很多平时常用的东西,都用上了,所以拿出来说说。一、代码var GetKeywords = { str: "", limit: 11, keywords:[], init : function(){ var box = this._("article"), _this = this; //获取已经存在的关键词 this.getAllKeyWord(); //让rmKeyWord函数全局化 window.rmke 阅读全文
腾讯的三轮面试(web前端)
2013-04-27 23:59 by Barret李靖, 17337 阅读, 17 推荐, 收藏, 编辑
摘要:笔试就不说了,说多了都是泪,选择题基本不会,幸好填空题和附加题都拿下了,貌似最后78分。【一面】~=110分钟 2013/04/24 11:20 星期三进门静坐30分钟做题。填空题+大题+问答题>>填空题何时接触电脑 何时接触前端运算符 字符串处理 延时 display position XMLHttpRequest 正则Jquery绑定事件 cookie>>大题BOM浏览器信息浏览器兼容性举例闭包作用与举例新闻ul列表,插入3个,获取index全文单词首字母大写ajax过程>>逻辑题任何时间分针和时针夹角文章单词(字母)频率出现最高30分钟等到车概率是70 阅读全文
JavaScript垃圾回收机制
2013-04-27 15:14 by Barret李靖, 9620 阅读, 1 推荐, 收藏, 编辑
摘要:一、垃圾回收的必要性 下面这段话引自《JavaScript权威指南(第四版)》 由于字符串、对象和数组没有固定大小,所有当他们的大小已知时,才能对他们进行动态的存储分配。JavaScript程序每次创建字符串、数组或对象时,解释器都必须分配内存来存储那个实体。只要像这样动态地分配了内存,最终都要释放这些内存以便他们能够被再用,否则,JavaScript的解释器将会消耗完系统中所有可用的内存,造成系统崩溃。 这段话解释了为什么需要系统需要垃圾回收,JS不像C/C++,他有自己的一套垃圾回收机制(Garbage Collection)。JavaScript的解释器可以检测到何时程序不再使用一... 阅读全文
JS闭包的用途
2013-04-24 08:41 by Barret李靖, 971 阅读, 2 推荐, 收藏, 编辑
摘要:我们来看看闭包的用途。事实上,通过使用闭包,我们可以做很多事情。比如模拟面向对象的代码风格;更优雅,更简洁的表达出代码;在某些方面提升代码的执行效率。1. 匿名自执行函数我们知道所有的变量,如果不加上var关键字,则默认的会添加到全局对象的属性上去,这样的临时变量加入全局对象有很多坏处,比如:别的函数可能误用这些变量;造成全局对象过于庞大,影响访问速度(因为变量的取值是需要从原型链上遍历的)。除了每次使用变量都是用var关键字外,我们在实际情况下经常遇到这样一种情况,即有的函数只需要执行一次,其内部变量无需维护,比如UI的初始化,那么我们可以使用闭包:var datamodel = { ... 阅读全文
IE6 bug集
2013-04-24 08:08 by Barret李靖, 780 阅读, 0 推荐, 收藏, 编辑
摘要:1.IE6的3像素偏移BUG 当浮动元素与非浮动元素相邻(注意这里的相邻可以是纵向的也可以是横向的)时,这个3像素的Bug就会出现,它会偏移3像素。实际表现就是两个元素之间产生了一道缝隙!解决方法很简单,将两个元素都浮动就OK了。此BUG深层的原因是非浮动元素的layout未触发,所以这里只要是能够触发layout的css都可以解决问题。2.IE6 双倍边距问题 当浮动元素设置margin边距时,边距会加倍。解决方法是给浮动元素加上display:inline属性。3.IE6下空标签高度问题 当你把标签的高度设置为0-19内的数字时,IE6会一致的显示为19px高。解决方法:给标签加上over 阅读全文
最受欢迎的几种图片格式及其常见用法
2013-04-22 18:18 by Barret李靖, 1201 阅读, 0 推荐, 收藏, 编辑
摘要:从某种程度上说,判断一个网页设计师是否优秀,可以从其在WEB开发(或网页设计)中是否合理的采用各种图片格式得出结论。事实上,或许所有人都知道图片存在GIF,JPG和PNG等格式,但并非所有人都知道它们之间的具体区别和使用技巧。 接下来,将给大家介绍:WEB开发中几种最受欢迎图片格式的前世今生以及如何正确的使用它们。JPEG JPEG格式是一种大小与质量相平衡的压缩图片格式。通俗一点讲,就是:高的压缩比=低的图片质量=小的文件大小。反之,低的压缩比=高的图片质量=大的文件大小。由于JPEG文件无法保持100 %的原始图像的像素数据,所以它不被认为是一种无损图像格式。用途: 由于这种极其... 阅读全文
如何向开源社区提问题
2013-04-22 16:24 by Barret李靖, 1694 阅读, 2 推荐, 收藏, 编辑
摘要:大家提问题前,请仔细阅读下这篇文章。高质量的提问,不光有助于问题的快速解决,还能赢得社区的尊重。如何向开源社区提问题使用软件产品,或多或少都会遇到问题。对于商业产品,我们可以咨询客服寻求帮助。对于公司自己研发的产品,我们可以直接请教专家同事。但对于开源软件,在遇到问题时,如何才能及时有效地寻求帮助呢?本文以开源类库Sea.js为例,说说我心目中的最佳实践。提问前遇到问题时,心里都很着急。在决定向开源社区提交问题前,最好先做做以下功课:尝试从官方文档中找到答案确保自己阅读过至少一次官方文档。这样在遇到问题时,如果能回忆起只言片语,就可以再去读一遍相关文档,问题往往也就解决了。Google 是你的 阅读全文
利用XMLHttpRequest响应头部的Date来做倒计时
2013-04-13 13:46 by Barret李靖, 3902 阅读, 2 推荐, 收藏, 编辑
摘要:关键词:倒计时 XMLHttpRequest readyState Date AJAXProblem [问题描述]先看看这个:(搜狗团购网站)还剩多久多久,这个东西你是怎么做的。不推荐方案脑残方案一: 把截止时间保存到cookie中,然后与现在时间做差值,进行比较。 方案评价: 1. 如果用户cookie没开怎么办? 2. cookie不宜过多,cookie过期管理等麻烦!脑残方案二: 把服务器的本地时间作为参数送到客户端,然后js相关处理 方案评价: 因网络延迟等原因存在误差屌丝看完变高富帅^_^ 先给你看一张图:(向服务器请求的某个任意文件)好像有的同学瞬间就... 阅读全文
摸透select和他的儿子们options
2013-04-11 13:59 by Barret李靖, 1242 阅读, 0 推荐, 收藏, 编辑
摘要:关键词:select option options selectedIndex remove add关于select的→API,自己去看,不多说了。select & option & optgroupoptgroup就是起到一个分组的作用。<!--common--><select id="s1"> <option value="--s--" selected="selected">----select----</option> <option value=" 阅读全文
打开窗口,关闭窗口
2013-04-10 16:06 by Barret李靖, 2174 阅读, 0 推荐, 收藏, 编辑
摘要:关键词:window.open() window.close() showModalDialog() 兼容性 测试等。 本文默认你对以上函数参数有基本了解。window.open window.open如果没有加第三个参数,则浏览器一般都会在新的标签页打开(除非你设置了新建窗口打开) 而有的时候,我们需要他弹出来。就想这个一样: 上述方式是:window.open(/*URL*/"",/*Name*/"",/*args*/"width=300,height=400"); 但是搜狗是不会挺你的话的,他不会新建一个你设定的窗口打开,而是在 阅读全文