摘要:
最近飞扬的小鸟确实有够火的。所以我们团队也来凑个热闹,弄个了网络版,做完了留下点东西大家分享一下。顺便说一下canvas和css3+dom的优劣。先讲一下这个小游戏要涉及到的逻辑,游戏的核心: 场景动: 背景平铺,视觉一直左移,并且按规律生成柱子。 小鸟飞: 小鸟一直固定在x轴同一个位置,y轴改变,垂直加速度下落,或者抬头飞行。 碰撞检查: 小鸟落地死,或者撞柱子死。 唯一一个事件,就是小鸟抬头飞。好吧。let's begin: 场景动: canvas版:setTimeout(function(){ flappy.Game.x += n; r... 阅读全文
摘要:
如何获取DOM中当前获取焦点的元素 由于底层库的数据传递的做法,是当Input、TextArea这样的输入库失去焦点时候更新数据到Data对象。于是产生了这样一个bug。当用户输入一些内容,然后点击DataInput组件的时间选择框时,前面的Input并没有失去焦点。所以为了解决这个bug,理所当然想到把焦点放到DataInput组件上,$("#DateInput").focus();可是却没有生效。(生效与否看字体是否变红)于是改成将焦点取消。$(document.activeElement).blur(),成功。可是ff下却没有document.activeElemen 阅读全文
摘要:
jQuery为了兼容性会把系统暴露出来的event重新整理一遍,但是复制粘贴的event就被丢掉了。所以要在所有原生浏览器想实现复制粘贴,大家都用flash实现了。其实只要用原生的方法捕获事件就ok。简单来个方法。var EventUtil = { addHandler: functi... 阅读全文
摘要:
寂寞的中国互联网又一次瘫痪了。说是顶级域的根挂了,不知道是黑客还是某个实习生干挂的。反正到现在还没有人来解释这件事。先普及一下,为什么顶级域的根挂了全中国都挂了。那是因为dns解析的特点是递归解析,这样就直接导致根成所有dns服务器的爸爸。如果爸爸死了,儿子也都活不了。就像吸血鬼的始祖挂了,所有儿子也挂了。(所谓递归解析,简单来说就是你向一个域服务器提出递归解析请求,域服务器就全权帮你解析域名,就是在他的授权域内有这个解析的返回信息给你,没有的话也会交给它自动帮你找域外的服务器分析,直到把结果返回给你,而非递归解析就是当在它域内找不到解析的时候就只会把其他有可能的服务器地址告诉你,要你的电脑自 阅读全文
摘要:
【微博】 Mozilla/5.0 (Linux; U; Android 4.2.2; zh-cn; GT-I9502 Build/JDQ39) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30【chrome】 Mozilla/5.0 (Linux; Android 4.2.2; GT-I9502 Build/JDQ39) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.64 Mobile Safari/537.36【猎豹】 Mozilla 阅读全文
摘要:
作为一个前端工程师,XSS漏洞不应该只是安全部门的工作。在项目上马的时候就应该对可能涉及的安全问题有所预防才是有一个好前端。- -什么是XSS•跨站脚本攻击(Cross-site scripting, XSS)• 是一种网站应用程序的安全漏洞攻击,是代码注入的一种。它允许恶意用户将代码注入到网页上,其他用户在观看网页时就会受到影响。这类攻击通常包含了HTML以及用户端脚本语言。XSS分类• 反射型• 存储型• DOM型防治XSS,个人觉得核心内容就是不能相信任何用户输入的数据。所以凡是前端要操作用户数据的地方,全部要转义。当然。简单一句话,当然不容易处理这样的情况。因为如果每一个方法都要去做一 阅读全文
摘要:
关于when.js的使用见屈屈的分享http://www.imququ.com/post/promises-when-js.html关于promise的实现见月影的分享http://www.wumii.com/item/18c3poL1y两位都是360前端知名的大牛,他们的分享已经写的非常深入了。我就不再重复一遍了。但是听完,总该留下点什么。那么我关注两个东西:1.when.js的适用场景。 http://yiminghe.iteye.com/blog/1396751 我写过一个小游戏,http://se.360.cn/weiboapp/crazy/game.html,如果在选择错误的情况.. 阅读全文
摘要:
这是实习工作的开始,也是正式踏入北京之后去参加的第一个活动。也算是想着法的去融入这个圈子。这两个分享都是基于nodejs的。nodejs从11年开始就开始红火。但是真正nodejs能用来干什么?我们知道nodejs的模型是采用事件循环机制,并且采用大量非阻塞的方式来实现这一高性能的实现。那么在网络编程中,我们可以把这种特性用在什么地方?这就是我一直以来的疑惑。若像paython和php一样用nodejs,也没有把这个技术的精华发挥出来。所以下面两个分享,算是探寻到一点点东西吧。ok,let go.http://www.w3ctech.com/event/22 (此链接为交流会内容介绍)美丽说- 阅读全文
摘要:
我已经写过一个方法了,另一个地方要调用这个方法,除了传参不同,没别的区别了,这样的话,我们就不用再实现一次这样的方法了。通常,我们写了一个基类,然后他的子类中,要重写这个方法。但是重写的部分也会用其原来的方法的内容。所以我们通常这么写。var child = new parent();child.prototype.override(){ parent.prototype.override.apply(this,argument); this.otherControl();}js中的访问者实现很简单,谁叫它是个弱类型呢。如果是c++这样的语言,那么值类型或者对象的类型转换中要做的事就太多了.. 阅读全文
摘要:
外观模式再简单不过了。var stopEvent = function( e ){ //同时阻止事件默认行为和冒泡e.stopPropagation();e.preventDefault();}jQuery源码中也有: first: function() { return this.eq( 0 ); }, last: function() { return this.eq( -1 ); }只不过把取某一个jQuery对象,换了个外观而已。 阅读全文
摘要:
基类,我们需要一个基类。数据库访问我们通常有一个基类,用于操作的统一性。那么,我们现在需要一个富客户端的前端基类。为什么我们需要它。1.我们需要一个dom元素与javascript之间的桥梁。2.我们需要一个可伸缩布局的方案。3.它是可拖动的。4.它是可改变大小的。5.它是可参数化配置的。6.它是可绑定数据源的。7.它是可隐藏也可延迟加载的。我们需要这么一个基类,避免我们重复写很多相似的代码、我们一个一个来说它们的实现。1.构建桥梁通常我们都用document.getElementById来用javascript获取一个dom元素。但这里,我们富客户端的方案是用javascript生成dom对 阅读全文