摘要:
事件委托可以 来解决这个因绑定事件随着按钮增加而可能导致的性能问题。原理很简单,利用 Javascript 的事件冒泡,我们可以把事件的绑定从按钮移到它们的父级元素上,不管按钮有多 少,它们只有一个共同的父级元素,那样我们只需要绑定一次事件就可以了var wrap = document.getElementById('wrap'), inputs = wrap.getElementsByTagName('input'); wrap.onclick = function (ev) { var ev = ev || window.event, target = ev 阅读全文
摘要:
1.事件目标现在,事件处理程序中的变量event保存着事件对象。而event.target属性保存着发生事件的目标元素。这个属性是DOM API中规定的,但是没有被所有浏览器实现。jQuery对这个事件对象进行了必要的扩展,从而在任何浏览器中都能够使用这个属性。通过.target,可以确定DOM中首先接收到事件的元素(即实际被单击的元素)。而且,我们知道this引用的是处理事件的DOM元素,所以可以编写下列代码:$(document).ready(function(){$('#switcher').click(function(event){$('#switcher . 阅读全文
摘要:
闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。一、变量的作用域要理解闭包,首先必须理解Javascript特殊的变量作用域。变量的作用域无非就是两种:全局变量和局部变量。Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。Js代码 var n=999; function f1(){ alert(n); } f1();// 999另一方面,在函数外部自然无法读取函数内的局部变量。Js代码 function f1(){ var n=999; } alert(n);// error这里有一个地方需... 阅读全文
摘要:
本文出处:http://www.cnblogs.com/dowinning/archive/2012/04/19/json-jsonp-jquery.html说到AJAX就会不可避免的面临两个问题: 第一个是AJAX以何种格式来交换数据?第二个是跨域的需求如何解决? 1.这两个问题目前都有不同的解决方案,比如数据可以用自定义字符串或者用XML来描述,跨域可以通过服务器端代理来解决。 2.但到目前为止最被推崇或者说首选的方案还是用JSON来传数据,靠JSONP来跨域。先说说JSONP是怎么产生的: 1、一个众所周知的问题,Ajax直接请求普通文件存在跨域无权限访问的问题,甭管你是静态页面... 阅读全文
摘要:
本文转帖自http://www.cnblogs.com/sharpxiajun/p/3292498.htmlCSS Hack技术是什么? 不同的浏览器对某些CSS代码解析会存在一定的差异,因此就会导致不同浏览器下给用户展示的页面效果不一样,碰到这样的情况就需要开发人员通过针对不同的浏览器对应写出不同的CSS代码,从而达到兼容不同浏览器的目的,不会让页面因为浏览器的不同而产生有差异的显示。CSS Hack原理 通过不同浏览器自身所带有的特别标识符以及CSS中优先级的机制来实现不同浏览器里CSS样式兼容性的问题。CSS Hack有三种实现方式 CSS类内部的Hack、CSS选择器... 阅读全文