随笔分类 - javascript
摘要:一般继承方式如下function people(n){ this.name =n;}function worker(name,num){ people.call(this, name); this.num =num;}worker.prototype =new people()worker.prototype.constructor = worker1 原型方式比较灵活function people(n){ this.name =n;}可以先生成对象,然后添加原型方法var p1 = new people('zj')people.prototype.show = f...
阅读全文
摘要:<!--[iflteIE7]><scripttype="text/javascript">(function($){$.fn.pozFixed=function(params){vardefaults={top:400,left:'50%',interval:100};defaults=$.extend(defaults,params);returnthis.each(function(i,o){var$this=$(this);this.fixPosition=function(){varst=$().scrollTop();$th
阅读全文
posted @ 2011-09-28 16:20
oneroom
摘要:1try{23 top.location.hostname;45 if(top.location.hostname!=window.location.hostname){67 top.location.href=window.location.href;89 }1011}1213catch(e){1415 top.location.href=window.location.href;1617}
阅读全文
摘要:Ajax中请求被缓存的问题在Ajax开发中,会遇到浏览器缓存内容的问题,比如,某个元素注册了鼠标事件(onmouseover),事件触发后会通过xmlhttprequest到服务器获取内容,在不刷新页面的情况下,浏览器会缓存第一次请求的内容,服务端更新后浏览器仍然显示第一次的内容。通常,这种请求都是xmlhttprequest发起的GET请求。根据HTTP规范,GET用于信息获取,而且应该是幂等的。也就是说,当使用相同的URL重复GET请求会返回预期的相同结果时,GET方法才是适用的。当对一个请求有副作用的时候(例如,提交数据注册新用户时),应该使用POST请求而不是GET。所以浏览器会对G.
阅读全文
摘要:在javascript的事件绑定中,我们经常用到的方法是functionaddListener(el,event,fn,bCapture){varisCapture=bCapture?bCapture:false;try{el.addEventListener(event,fn,isCapture);}catch(e){try{el.attachEvent('on'+event,fn);}catch(e){el['on'+event]=fn;}}}function whatIsThis(){ if (this === window) { alert('T
阅读全文
摘要:今天在编码时,遇到一个问题,特记录下。[代码]console.log(arr.length);结果是4arr.f1();arr= test();console.log(arr.length);结果是4这个好理解;二:var arr= test();console.log(arr.length);结果是4arr.f2();arr= test();console.log(arr.length);结果是0 不知道为什么会这样,难道arr.f2()可以修改test函数中闭包中的arr2;
阅读全文
摘要:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta c...
阅读全文
摘要:简介Closure所谓“闭包”,指的是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。闭包是 ECMAScript (JavaScript)最强大的特性之一,但用好闭包的前提是必须理解闭包。闭包的创建相对容易,人们甚至会在不经意间创建闭包,但这些无意创建的闭包却存在潜在的危害,尤其是在比较常见的浏览器环境下。如果想要扬长避...
阅读全文
摘要:转自 http://www.ilovejs.net/archives/151
阅读全文
摘要:正则表达式用于字符串处理,表单验证等场合,实用高效,但用到时总是不太把握,以致往往要上网查一番。我将一些常用的表达式收藏在这里,作备忘之用。匹配中文字符的正则表达式:[\u4e00-\u9fa5]匹配双字节字符(包括汉字在内):[^\x00-\xff]应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)String.prototype.len=function(){ return ...
阅读全文
摘要:var cainiao= { name:'小马', gender : '男', showInfo : function(){ var str = '姓名:' + this.name ; str+= ',性别:' + this.gender; alert(str); } } cainiao.showInfo(); 如果要写一个方法,来实现showInfo的延时调用var cainiao= { ...
阅读全文
摘要:容易欺骗别人感情的JavaScript定时器本文地址: http://www.laruence.com/2009/09/23/1089.html转载文章 JavaScript的setTimeout与setInterval是两个很容易欺骗别人感情的方法,因为我们开始常常以为调用了就会按既定的方式执行, 我想不少人都深有同感, 例如认为setTimeout中的问候方法会立即被执行,因为这并不是凭空而说...
阅读全文
摘要:function addEventHandler(oTarget, sEventType, fnHandler) {if (oTarget.addEventListener) { oTarget.addEventListener(sEventType, fnHandler, false);//firefox} else if (oTarget.attachEvent) { oTarget.atta...
阅读全文
摘要:转自 西红柿不是番茄Lazy Definition Pattern是这样的一个模式:根据浏览器之间的解析javascript的差异性,使得创建封装的对象或者是函数的时候都需要使用浏览器的嗅探技术来做判断,而且对象或者方法每调用一次就需要去嗅探,这是一个非常不好的额外功。而解决这个瓶颈的方法之一就是Lazy Definition了。它会在浏览器第一次执行该对象或者函数的时候就记住这次的操作,以至于下...
阅读全文
posted @ 2010-07-30 14:19
oneroom
摘要:这个函数用在火狐(firefox)上面老是出错,今天仔细研究了下,改正了,希望别人不要遇到我这样的问题[代码]还转一个可以用的代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--functioncleanWhitespace2(node){varnot...
阅读全文
摘要:1. 上下文对象 闭包<html ><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>闭包演示</title><style type="text/css"></style><script type...
阅读全文
摘要:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--function$(id){returndocument.getElementById(id);}function$F(id){returndocument.getElementById(id).va...
阅读全文

浙公网安备 33010602011771号