摘要:找到zepto源码:修改为如下代码:zepto.Z = function(dom, selector) { dom = dom || [] // 支持ie10,主要是支持wp8 if(window.attachEvent){ for(var func in $.fn){ dom...
阅读全文
摘要:js中要实现数据排序,其实只需要用sort函数就能很好的满足了,但是我今天想知道他和其他排序算法的区别,比如耗时呀等。测了一组数据如下: 1 // ---------- 一些排序算法 2 Sort = {} 3 Sort.prototype = { 4 // 利用sort进行排序 5 systemSort:function(array){ 6 return array.sort(function(a, b){ 7 return a - b; 8 }); 9 ...
阅读全文
摘要:最近有需求通过iframe插入代码。有蛮多方法,如下:1 var iframe = document.getElementById('previewUrl');2 iframe.src = 'about:blank';3 iframe.contentWindow.document.body.innerHTML+="12312"4 iframe.contentWindow.document.close();试了下,如下代码也可以:iframe.contentWindow.document.getElementsByTagName('ht
阅读全文
摘要:javascript中对象的概念是很普遍的,对象是是对象,数组是对象,函数也是对象,字符串其实也是对象。常见的对象创建方法有对象字面量、构造函数创建。我们先来看看对象的创建还有哪些更高级的模式。一、命名空间模式二、模块模式三、沙箱模式四、链模式命名空间模式什么是命名空间模式咧?简单的说就是为了避免出现过多的全局变量,将多个变量作为某一个全局变量的属性存在。比如:function brother1(){};function brother2(){};这样的两个函数直接作为了window的属性成为了全局变量,如果改成这样:var parent={};parent.brother1=function
阅读全文
摘要:使用document.domain实现ajax跨子域跨子域:比如static.xxx.oooo.com的页面使用ajax方式调用xxx.oooo.com的接口的时候,会出现跨域的错误。最开始以为在static.xxx.oooo.com的页面设置domian为xxx.oooo.com的时候就会解决问题,但是发现问题依然存在。上网一查,还蛮多资料,特别是随网之舞的blog里介绍用document.domain解决跨子域的方法。http://dancewithnet.com/2007/07/22/solve-cross-sub-domain-ajax-with-document-domain/就是使
阅读全文
摘要:Js中的prototype一直对prototype理解的不深,只是晓得如果一个类(实际上是类的构造函数)通过prototype来定义一个函数,那么通过这个类衍生的实例就可以直接使用这个方法。比如:function Person(name){ this.name=name; this.showMe=function(){ alert(this.name); }};Person.prototype.from=function() { alert('I come from prototype.');} var one=new Person('js');one.show
阅读全文
摘要:文本内容主要包括以下几点:Ø浏览器内核的组成;Ø浏览器渲染引擎的工作原理Ø浏览器渲染过程中出现的reflow和repaint一、浏览器内核组成:渲染引擎和JS引擎,不同的浏览器、即使同一浏览器不同型号可能渲染引擎和JS引擎都不一样。1.渲染引擎1)Trident页面渲染引擎 –> IE系列浏览器;2)Gecko页面渲染引擎 –> Mozilla Firefox;3)KHTML页面渲染引擎或WebKit框架 –> Safafi和Google Chrome;4)Presto页面渲染引擎 –> Opera2.JS引擎1)JScript引擎 –&g
阅读全文
摘要:JavaScript语言精粹读书笔记之函数调用与this看到javascript语言精粹函数那一章,对函数调用进行了总结,受益匪浅。在JavaScript中一共有四种调用模式:方法调用模式,函数调用模式,构造器调用模式和apply调用模式。方法调用模式:当一个函数被保存为对象的一个属性时,我们称它为一个方法。当一个方法被调用时,this被绑定到该对象。函数调用模式:当一个函数并非一个对象的属性时,那么它被当作一个函数来调用。varsum=add(3,4);构造器调用模式:如果在一个函数前面带上new来调用,那么将创建一个隐藏链接到该函数的prototype成员的新对象,同时this将会被绑定到
阅读全文
摘要:这是司徒正美收集的js判断是否是数组的方法:http://www.cnblogs.com/rubylouvre/archive/2009/09/15/1567338.htmlDouglas Crockford的版本var isArray = function(a){ return a && typeof a === 'object' && typeof a.length === 'number' && typeof a.splice === 'function' && !(a.pro
阅读全文
摘要:项目中经常遇到这样的代码:function changeStyle(e){ var e = e || window.event; var target = e.srcElement || e.target; target.style.display = "none";}document.getElemntById("xxx").onclick = changeStyle;这里的e代表什么了,这样看,e是一个参数,当调用函数这样的一个事件函数的时候,一般实参是null,这时候如果是ie处理,e = window.event;window.event是什么了
阅读全文
摘要:上篇文章中提到了对于第一个例子中的结果为undefined表示不理解,这里查了下javascript中的undefined,其实,有明确的定义,undefined就是定义好了的globel值,表示变量被定义,但是未被初始化,所以,能很清楚的明白例子中的undefined表示var01是只定义了没初始化。而"undefined"标示的是一个字符串,所以,if( i == undefined)表示判断定义好了的i是否被初始化;if(typeof i == "undefined")表示判断变量i是否被定义,或者判断i是否被初始化。可以参考http://www.
阅读全文
摘要:对var不是很理解,就上网查了查,很多都是这个例子,说看了例子就理解了,但是看了半天还是不懂。例子如下:例一: 1 <script language="javascript"> 2 var var00 = 0; 3 document.write(var00 + '<br>'); 4 5 var var01 = 1; 6 function foo() 7 { 8 document.write(var01); 9 var var01 = 1;10 }11 foo();12 </script>例二:<script lang
阅读全文
摘要:在表单提交的时候,用户有时候会重复的点击提交按钮,会导致多次提交,产生重复数据。我们应该怎么办了?一般想法是:通过attachEvent在 form的onsubmit事件中写一个方法,每次触发该事件时执行该方法,我们可以给form增加一个submited属性,每次判断这个属性,为 false的时候继续提交表单并且设置form.submited=true,反之说明表单已经提交,就不再提交表单。 但是,出现问题了:提交表单一般有三种方式 <form action=xxx.aspx onsubmit="return false;"name=form1> 1.<i
阅读全文
摘要:MicrosoftInternetExplorer402DocumentNotSpecified7.8Normal0读完这本书,对于网站性能有了一个更加深入的理解,以前对于网站的优化,还以为只是服务器的事,是后台设计模式或编码技巧的原因,是数据库优化的问题,没怎么考虑到前端的优化,但是这本书改变了我的局限思维,让我认识到前端对网站性能的影响是如此巨大:80%的最终用户响应时间花在了页面中的组件上,也就是说,如果我们可以将后端的响应时间缩短一半,整体响应时间只能减少5%~10%;而如果关注前端,缩短前端响应时间的一半,那么整体响应时间可以减少40%~45%。而前端改善网站性能的方法也不是无迹可寻
阅读全文
摘要:推荐几本学习JavaScript学习书籍吧:《JavaScript权威指南》感觉是一本工具书,不必细读,有问题的时候查它;如果是学基础一点的话:《JavaScript初/中/高级编程》人民邮电出版社《精通JavaScript》人民邮电出版社推荐学习网址:http://www.w3school.com.cn/js/index.asp w3c官网,不解释,还是很详细的http://julying.com/blog/ 七月的博客,感觉很虎
阅读全文