摘要:
javascript库的产生,增强了浏览器或javascript语言的某些机制的功能,让业务开发人员,更专注业务逻辑,而不是机制逻辑。比如,0.兼容性同样的功能函数,不同的浏览器所暴露的api名字不一样。库对浏览器做了判断,然后对外暴露统一的api。1.事件管理浏览器没有提供,一次性,去除某个html元素所有通过addEventListener绑定的事件,的api而库通过对你绑定的事件,进行标记,分类。于是你可以通过库提供的api,进行一次性去除某个html元素所绑定的所有事件。2.ajax浏览器没有提供超时,跨域(最新ajax规范有提供),后退处理。而库封装了各种问题的解决方案,对外暴露统一 阅读全文
摘要:
对于ajax,三步骤,第一,创建xhr对象;第二,发送请求;第三,处理响应。但在编写过程中,实际中会碰到以下问题,1.超时2.跨域3.后退解决方法:1.超时设置定时器,规定的时间内未返回信息,作超时处理。2.跨域这个则和html4的ajax关系不大了,动态添加script标签,并设置其onload事件,进行处理。3.后退不考虑IE的情况下,通过修改location.hash产生历史,设置hashchange事件处理后退。封装成库的过程:1.给用户填的抽象2.重复出现的过程要抽象3.封装过程,参考设计模式文不对题不解释。 阅读全文
摘要:
第一,通过obj.addEventListener("click",fn)绑定的事件,你不能通过obj.onclick = null;来移除绑定点击事件的所有回调函数。所以引入第三方对象空间handler,来对用最终add函数绑定的事件,进行事件管理。具体如何管理,首先是以html element为key,它的value是一个数组,数组元素handler是zepto封装的事件对象。其对象为del:undefinede:"click"fn:function (){i:0ns:"namespace"proxy:function (e) { 阅读全文
摘要:
首先看的是整体框架,// zepto骨骼,这个函数的作用使得Zepto(slector, context)使用很多$.fn里面的方法var Zepto = (function(){ // zepto是一个命名空间 var $, zepto = {} // 这是一个工厂方法,返回一个数组 zepto.Z = function(dom, selector) { dom = dom || [] // 不知道__proto__和prototype的区别了吧,一个是对象的,另一个是方法的。new出来的对象的__proto__和构造函数的prototyp... 阅读全文
摘要:
网页测试源代码: 浏览器图片加载 display:none;的图片会不会加载?会!DOM结构预备的时候,display:none;的图片会不会加载?会!别忘了查看附件玉伯博客的讲解:请在主流浏览器中打开测试页面,在Fiddler里查看http请求。1. 隐藏图片《... 阅读全文
摘要:
很基础。inline-block元素,左右间隙去除,去掉代码的空白字符。上下间隙去除,设置vertical-align属性。svn与githubgithub是国际性的,并且名声不错,功能好多。适用于复杂性项目。svn能干的事情,github都能干。反之,不一定成立。svn在国内有code.taobao.org,适合新手进行自己项目的代码管理。当前时间,网页上显示utf-8格式的文件,会有中文乱码问题。上手容易性,svn占优。 阅读全文
摘要:
1.如果前端页面是增删查改这种需求,采用MVC思想开发。MVC,基本思想是,Model层发生变化,就通知View层;View层发生变化,就通知Model层;Control层就是设置变化入口。Model处理,View处理要隔离开。用js对象进行变量和函数分类。2.后台数据放入前台html页面里面,会发... 阅读全文
摘要:
如果是大公司的普通程序工程师,那么,代码驾驭力很重要。驾驭代码,如同带兵,如何像韩信,多多益善。大部分情况是,产品提出需求->编写代码->产品需求变化/原需求上加新需求->改写代码。还有产品发布日期。需求变化是一个不争的事实,需求经常变化更是司空见惯。重构,设计模式。等等,还有两个关键字,协作,清晰。看着自己努力打造的代码,被推倒;或者一想到自己的亲生代码,要进行大手术,实在是一件不爽和痛苦的事。不爽在于,原先明明说好要那样做,为什么现在又变了(产品人员也很无奈,现实逼的)!你自己产品没说清楚,现在才来纠正(太多东西,产品人员没注意到)!痛苦在于,按照我现在写的代码结构,照产 阅读全文
摘要:
话说js设计模式有关的书籍有Ross Harmes / Dustin Diaz 的《Javascript设计模式》,Stoyan Stefanov的《JavaScript Patterns》,Addy Osmani的《Learning JavaScript Design Patterns》。第一本很... 阅读全文
摘要:
来自:http://www.howzhi.com/group/it/discuss/10051#r3Ctrl+D 选词 (反复按快捷键,即可继续向下同时选中下一个相同的文本进行同时编辑)Ctrl+G 跳转到相应的行Ctrl+J 合并行(已选择需要合并的多行时)Ctrl+L 选择整行(按住-继续选择下行)Ctrl+M 光标移动至括号内开始或结束的位置Ctrl+T 词互换Ctrl+U 软撤销Ctrl+P 查找当前项目中的文件和快速搜索;输入 @ 查找文件主标题/函数;或者输入 : 跳转到文件某行;Ctrl+R 快速列出/跳转到某个函数Ctrl+K Backspace 从光标处删除至行首Ctrl+K 阅读全文