上一页 1 ··· 5 6 7 8 9 10 下一页

2011年2月12日

QWrap的浏览器检测

摘要: 有时需要根据不同的浏览器,做不同的事。这就需要我们对浏览器以及版本作检测。QWrap的Browser主要代码如下。[代码]测试代码:View Code 检测结果如下: 阅读全文

posted @ 2011-02-12 14:28 JKisJK 阅读(933) 评论(0) 推荐(0) 编辑

2011年1月30日

简析javascript的this

摘要: 昨天跟朝沐同学讨论到this指针,今天决定凭感觉来写一篇,或许对某些同学有帮助。惭愧,一直以来,写码只是凭感觉,没有系统的学习过这套那套理论,所以先申明,以下内容大多是感觉描述,没有去对照权威参考,多有错漏。很小白的百度知道一下“javascript this”,搜到了这个:http://zhidao.baidu.com/question/87695812.html?si=2其中,网友tkocn的回答重点就是这段:(----没考证是原创还是引用)定义:this是包含它的函数作为方法被调用时所属的对象。说明:这句话有点咬嘴,但一个多余的字也没有,定义非常准确,我们可以分3部分来理解它! 1、包含 阅读全文

posted @ 2011-01-30 09:50 JKisJK 阅读(2862) 评论(8) 推荐(6) 编辑

2011年1月29日

$、W、g之争

摘要: $先行者如prototype用来代替getElementById,后来者如jquery用来代指jquery,还有很多模板用来代指模板参数,等等……总之,假设一个单词,对那个系统很重要很常用,那么,他们就想把这个单词简写成$。第一个成功的系统,就是美国这个大系统,用它来指代钱。正如aoao同学所说,“代码里有很多$,会让写码的人很有成就感”,$是个很有诱惑力的符号,QWrap也很想使用。可是,考虑到$已经被先行者大量的挖掘与发挥、并且还会被后来者无限的挖掘与发挥,我们还是忍痛放弃了。于是,我们转而推荐以下两个缩写:W、gWQWrap系统的提出Wrap概念(对一个core核进行包装,外套一层wra 阅读全文

posted @ 2011-01-29 09:53 JKisJK 阅读(2648) 评论(3) 推荐(0) 编辑

2011年1月28日

QWrap域名开通

摘要: 几近一个月,一直在整理QWrap的使用文档。虽说使用文档只是针对QWrap的有啊版应用,不过它可能会是以后QWrap的典型应用。跟组件有关的,文档中几乎没有提一个字,很多同学所关心的Ajax、Anim、Valid、Panel、Switch等等,可能会在三四月份才能与大家见面。这个文档是第一个真正面向写页面同学的帮助文档。虽说有些寒碜(抱歉,能帮忙美化的同学最近忙得抽不出身),甚至山寨得让我不敢给他一个正式的名份,只敢以'_jk'来命名它,但它毕竟还是让我们有了开放给最终用户(而不只是资深同行)围观的勇气。整完之后,QWrap的官域名也同时开通了: http://www.qwrap.com。空间 阅读全文

posted @ 2011-01-28 20:45 JKisJK 阅读(380) 评论(0) 推荐(0) 编辑

selector优化写法----之---改变selector的顺序

摘要: 例如以下结构,相当于一个只有一层的树。代码其中,ul.open有5个,ul.closed有95个现在想获取'ul.open li'正常的写法,可能是$('ul.openli')。在当前案例下,试想一下:如果选择器是从右往左来找,则:先找到100*100个li,再向上寻父ul.open,找到则通过。如果选择器是从左往右来找,则:先找到5个ul.open,再寻子,找5*100个li。显然,后者快于前者。现实情况是:很多selector都是从右往左找的。那我们该怎么来优化这个问题呢?嗯,selector是从右往左的,但是我们可以改变它的查找方向。例如,QWrap里的写法:W('ul.open' 阅读全文

posted @ 2011-01-28 13:12 JKisJK 阅读(811) 评论(6) 推荐(0) 编辑

js对象数组按属性快速排序

摘要: 前一篇《关于selector性能比赛》中提到,目测觉得在$("div,p,a")这样有逗号时,sizzle耗时异常(600多个元素,花了200ms),说是它可能没有优化ie下的排序。按所推荐的程序在IE下跑了下,的确,排序耗时很小。代码Array原生的sort,当它传一个比较函数时,由于它内部用哪种排序算法,都需要多次比对,所以,耗时是很自然的事。上面的快速排序,它并没有多次比对,而是:1。取出el属性值,用属性值产生一个String对象,2。将el附在String对象上。3。用String对象组成数组。4。用原生的sort进String对象数组排序。5。在排好序的String数组中,按序取出 阅读全文

posted @ 2011-01-28 07:18 JKisJK 阅读(9209) 评论(6) 推荐(0) 编辑

关于selector性能比赛

摘要: selector性能比赛先说selector效率优化策略三条:1. 最右边的自选器精准化,以减少海选数。“.aaa”优化成“input.aaa”-----海选*.aaa变成了海选input.aaa“.ctn .aaa”优化成“.ctn input.aaa”-----海选*.aaa变成了海选input.aaa2. 带上容器id,以减少海选数。“div.aaa”优化成“#container div.aaa”-----海选div.aaa变成了海选#container input.aaa3. 除带id祖先或带id旁系亲属外,关系尽量简单,以减少血缘鉴定难度。“body input.aaa”优化成“in 阅读全文

posted @ 2011-01-28 06:08 JKisJK 阅读(2322) 评论(6) 推荐(0) 编辑

2011年1月13日

深层集化------QWrap的FunctionH.mul变换 之二

摘要: 前一篇随笔讲过mul函数对get first、set all策略的应用,参见:http://www.cnblogs.com/jkisjk/archive/2011/01/13/QWrap_Function_mul_01.html在该篇文章里,为了重点突出,略掉了mul的recursive参数。recursive参数是一个boolean值,表示是否是深层集化。QWrap的FunctionH.mul的完整代码如下:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter. 阅读全文

posted @ 2011-01-13 17:57 JKisJK 阅读(865) 评论(1) 推荐(0) 编辑

get first、set all策略------QWrap的FunctionH.mul变换 之一

摘要: get first、set all策略------QWrap的Function.mul变换 之一get first/set all策略由jquery推出以来,很深入人心,很多享受他便利的使用者,甚至都没意识到还有这个策略的存在----大道自然啊。它是个什么样的策略呢?代码1(代码仅为示意,不是可执行的):W([el1,el2]).setValue(1),很显然,这句话会造成el1.value=1,el2.value=1。即,操作对所有元素都有效。对于set操作,各个框架都是一样的策略:set all。代码2:W([el1,el2]).getValue() 返回的是什么呢?A: 是el1.val 阅读全文

posted @ 2011-01-13 13:49 JKisJK 阅读(1434) 评论(1) 推荐(0) 编辑

2011年1月11日

QWrap Selector的几个应用场景

摘要: 除了如jquery的$(selector)之外,Selector在js中有很多使用场景。以QWrap的Youa版应用(js/apps/core_dom_youa.js)为例,主要用法有以下。W(selector) 相当于jquery用户使用的$如:W(‘input.aaa’).css(‘color’,’red’).val(‘’);W(‘#myid div’). css(‘color’,’red’);W.one(selector) 得到某个满足条件的元素的W包装如:W.one(‘input.aaa’).css(‘color’,’red’).val(‘’);W.prototype.query( 阅读全文

posted @ 2011-01-11 22:23 JKisJK 阅读(1535) 评论(3) 推荐(0) 编辑

上一页 1 ··· 5 6 7 8 9 10 下一页

导航