这周心血来潮,翻看了现在比较流行的几个JS脚本框架的底层代码,虽然是走马观花,但也受益良多,感叹先人们的伟大……
感叹是为了缓解严肃的气氛并引出今天要讲的话题,”javascript面向对象编程”,接下来,我们围绕面向对象的几大关键字:封装,继承,多态,展开。
封装:javascript中创建对象的模式中,个人认为通过闭包才算的上是真正意义上的封装,所以首先我们先来简单介绍一下闭包,看下面这个例子:
是不是很眼熟呢?没错了,这其实就是一个简单的闭包应用了。简单解释一下:上面的函数myInfo中定义的变量,在它的内嵌函数showInfo中是可访问的(这个很好理解),但是当我们把这个内嵌函数的返回引用赋值给一个变量oldFish,这个时候函数showInfo是在myInfo函数体外被调用,但是同样可以访问到定义在函数体内的变量。oh yeah!
在用户体验这个行业,经常会听到,可用性,可访问性这样专业的名词,但是,事实上在很多产品实现过程里都忽略了这一点!WHY?
举个很简单的例子,用户的注册流程,很多交互设计师在做这块流程设计的时候都无可避免的忽略了部分可用性和可访问性,直白点说,产品的应用场景没有cover全用户群,损害了这部分用户的可用性和访问性。
太抽象?不明白?好,那我们就用户注册流程展开,侃侃流程中用户提交表单的设计。

看上图,这是现有支付宝注册流程中的一块功能,要实现的功能很简单,个人用户直接填写注册信息,是企业用户的话,就先选择企业,再填写注册信息,最后提交表单,完成操作。流程早就发布上线了,看上去很和谐,但是不然……
今天晚上由”胡工”牵线,”组织”夫妇做东,才有幸和“残留”在杭州的高三2班余部小聚。在这里要特别感谢组织,感谢胡工,让我们能酒足饭饱之余还能扯扯皮,联络联络感情。虽然许久不见,但席间大家还是有说有笑,相谈甚欢。年纪越长大,就越觉得年少友谊的珍贵,心里暖暖的。
不知不觉高中毕业已近十年,我们也都“奔三”的人了,真是岁月如飞刀,刀刀催人老啊。可以设想一下再过十年后大家相聚的情形,应该都是拖儿带女了吧,有趣!有趣!突然之间有种晃如隔世的感觉,我是不是想太远了,这么想下去,没多久,我们就都成老头老太了!oh,那真是糟糕,到那时,咱们漂亮的“徐博”会是什么样子呢?罪过,罪过!
这次还意外的碰见了“肖飞”同学,不见则罢,一见就是一双,哈哈,看来好事也近了。先恭喜一下!王颖妹妹也是许久不见,瘦了,绝对瘦了,我向毛主席发誓,我说的是真的。“组织”夫妇现在在衙门都混的风生水起的,以后同学们要是犯了案,就靠你们关照了呀!至于胡工,那不愧是我们二班的抗霸子,有大哥风范,我看好你,哈哈!可惜还有很多同学未到,过年一定要聚聚!
一年快结束了,晚上部门搞了个聚会,有吃有喝有表演,大家玩的都很high,又一次接受了公司“骚”文化的洗礼。可爱的公司,可爱的同事,可爱的“骚”文化。两年的时间,在这个大集体里,成长了很多,希望新的一年,会更精彩!

阿里巴巴中文站UED的同学们趁着圣诞来临之际,隆重推出了阿里人物志,这是一套集趣味性,独特性,贴近生活,可多领域使用的阿里人物志,个人觉得非常经典。这些小图标不仅展示了阿里巴巴的“笑脸文化”,更展示了UED团队的创意和思想。Designer和美工的区别应该就在于此吧!

关于跨域这个话题,很早就答应过要分享,但是因为懒,一直拖着,直到D2上有人谈起了“完美跨域”。“跨域”应该已经算不上什么难题了,只是提起“完美”这两个字,突然觉得有了新意,那就写点什么吧,至少对自己有个交代嘛!跨域方案有很多,接下来一一枚举,会给出demo,demo的宗旨是尽可能简单的让新手明白,各方案中跨域的原理,实际应用请酌情修改。
原理:IE本身依附于windows平台的特性为我们提供了一种基于iframe,利用内存来“绕行”的方案,在这里我称之为,本地存储原理。
缺点:不支持非IE浏览器,并且影响到用户对剪贴板的操作,用户体验非常不好,特别是在IE7下,受安全等级影响,会弹出提示框。
演示:[ 点此阅览 ]
子页面在子域:demo.ioldfish.cn下,在页面中加入如下代码获取页面高度并存入剪贴板。
Tags: document.domain, js跨域, window.name, 完美跨域 | 评论[15] | 共有 1,493次浏览