javascript 作用域链分析

评论(0)浏览(87)分类:JavaScript/Ajax开发技巧
javascript 作用域链分析+展开-JavaScriptvara=10;functiontest(){a=100;alert(a);alert(this.a);vara;alert(a);}test();对于上述代码中test函数的作用域链的形成过程:step:1[[scope]] = { { a: undefine, test: undefined, document: ..., location: ..., }}step2:[[scope]] = { { a: 10, test: undefined, ..

Nicholas C. Zakas谈怎样才能成为优秀的前端工程师

评论(0)浏览(130)分类:HTML/CSS兼容/XML
Nicholas C. Zakas谈怎样才能成为优秀的前端工程师Nicholas C. Zakas谈怎样才能成为优秀的前端工程师昨天,我负责了Yahoo!公司组织的一次面试活动,感触颇深的是其中的应聘者提问环节。我得说自己对应聘者们提出的大多数问题都相当失望。我希望听到一些对在Yahoo!工作充满激情的问题。在昨天的应聘者中,只有一个人的问题是我认为最好的,那个人问我:“你觉得怎么才能成为优秀的前端工程师?”..

网站前端优化自检询问之web优化checklist

评论(0)浏览(145)分类:HTML/CSS兼容/XML
网站前端优化自检询问之web优化checklist小寂觉得这是前端网页工程师在设计完后优化时必须考虑的事情!希望大家在设计网页的时候多多考虑下吧自检项目:* 资源检查(针对html,js,swf,css,图片等)是否新增加了文件请求?是否有404请求?新增加的文件请求响应中是否有expirex头(好头)?新增加的文件请求响应中是否有etag头(坏头)?新增加的文件请求是否支持gzip压缩?新增加的文件..

Web前端开发工程师必读的15个设计博客

评论(0)浏览(163)分类:HTML/CSS兼容/XML
Web前端开发工程师必读的15个设计博客Web设计是一个不断变化的领域,因此掌握最新的发展趋势及技术动向对设计师来说非常重要,无论是学习新技术,还是寻找免费资源与工具,设计博客都是很不错的去处。本文向大家推荐15个非常不错的设计博客。 1. Smashing MagazineSmashing Magazine创建于2006年,是最好的设计博客之一,有很多Web设计和开发方面的高质量文章,内容涉及 HTML5、CSS、..

JavaScript类和继承:constructor属性

评论(0)浏览(109)分类:JavaScript/Ajax开发技巧
JavaScript类和继承:constructor属性  constructor属性始终指向创建当前对象的构造函数。比如下面例子: +展开-JavaScript//等价于varfoo=newArray(1,56,34,12);vararr=[1,56,34,12];console.log(arr.constructor===Array);//true//等价于varfoo=newFunction();varFoo=function(){};console.log(Foo.constructor===Function);//true//由构造函数实例化一个obj对象varobj=newFo..

浏览器渲染原理

评论(0)浏览(180)分类:JavaScript/Ajax开发技巧
浏览器渲染原理  Web页面运行在各种各样的浏览器当中,浏览器载入、渲染页面的速度直接影响着用户体验简单地说,页面渲染就是浏览器将html代码根据CSS定义的规则显示在浏览器窗口中的这个过程。先来大致了解一下浏览器都是怎么干活的:  1. 用户输入网址(假设是个html页面,并且是第一次访问),浏览器向服务器发出请求,服务器返回html文件;  2. 浏览..

javascript设计模式2

评论(0)浏览(131)分类:JavaScript/Ajax开发技巧
javascript设计模式2Javascript设计模式之组合模式  组合模式:运用该设计模式可以通过组合对象添加属性和方法,通过递归批量式的让叶子对象得到组合对象的属性和方法。打个比方我们现在要动态创建一个银行列表,按银行类型分为网上银行类,卡通银行类,并可配置他们是否显示。用组合模式如何实现呢?  第一步还是先定义接口,因为要做到某类银行甚至某个银行是..

javascript设计模式1

评论(0)浏览(356)分类:JavaScript/Ajax开发技巧
javascript设计模式1  设计模式,不得不先重点着墨于“接口设计”,因为接口设计在设计模式中的意义太大了,大于模式本身。直观起见,先介绍一下接口定义的形式:+展开-JavaScriptvarinterface=newInterface("interface",[["getName",1],["getAge",1]]);  可以看出接口函数必须包含两个参数,接口方法定义在一个二维数组中。上例中定义了两个接口方法:getName,..

JavaScript变量函数预编译与执行顺序的关系

评论(0)浏览(145)分类:JavaScript/Ajax开发技巧
JavaScript变量函数预编译与执行顺序的关系  以更形象的示例来说明JavaScript代码在页面中的执行顺序。如果说,JavaScript引擎的工作机制比较深奥是因为它属于底层行为,那么JavaScript代码执行顺序就比较形象了,因为我们可以直观感觉到这种执行顺序,当然JavaScript代码的执行顺序是比较复杂的,所以在深入JavaScript语言之前也有必要对其进行剖析。1.6.1 按HTML文档流顺序执行JavaSc..

javascript执行顺序与作用域

评论(0)浏览(76)分类:JavaScript/Ajax开发技巧
javascript执行顺序与作用域关于JS变量声明的小细节 对于从未声明过的对象,如果尝试给它赋值,会隐式的将它声明为全局对象。比如: +展开-JavaScript(function(){s='abc';})();alert(s);//会弹出abc 如果尝试读一个未声明的对象,JS会报错。比如: alert(a); //不会弹出对话框,会报错 这个结论是犀牛书中所写。但是有意思的是,在IE里,如果尝试读一个未声明的对象,并..

最新jquery UI Datepicker api文档使用说明

评论(0)浏览(210)分类:JavaScript/Ajax开发技巧
最新jquery UI Datepicker api文档使用说明 Overview The jQuery UI Datepicker is a highly configurable plugin that adds datepicker functionality to your pages. You can customize the date format and language, restrict the selectable date ranges and add in buttons and other navigation options easily.By default, the datepicker calendar opens in a sma..

jQuery dataType指定为json的问题

评论(0)浏览(3492)分类:JavaScript/Ajax开发技巧
jQuery dataType指定为json的问题jQuery dataType指定为json的问题,不执行回调函数  最近在看jQuery的API文档,在使用到jQuery的ajax时,如果指定了dataType为json,老是不执行success回调,而是执行了error回调函数,极度郁闷。后面改为1.2.6版本可以执行。具体的问题查看下面这篇文章。  jQuery1.4.2 ajax存在一个严重bug问题  然后继续下载了几个jquery版本,如1.3.2,..

IE用户智商低 精心策划的假新闻

评论(0)浏览(89)分类:HTML/CSS兼容/XML
IE用户智商低 精心策划的假新闻【CSDN综合报道】最近,“IE浏览器用户智商低”的新闻被国内外各大媒体广泛报道。然而,BBC经过调查,发现这是一条精心制造的假新闻。这一结论最初来自一家名为AptiQuant的加拿大心理测试机构7月28日发布的新闻稿(附有非常专业的调查报告),称有10万人参与的网上调查结果表明,IE用户的智商低于其他浏览器用户。这条消息具有足够爆炸性,包括B..

Firefox textContent属性等效于IE的innerText

评论(0)浏览(94)分类:JavaScript/Ajax开发技巧
Firefox textContent属性等效于IE的innerText  在IE和Opera下,DOM对象支持innerText属性,可以很方便的去除HTML标签。  但在Firefox不支持该属性,FF下的DOM对象支持textContent,该属性与IE浏览器的innerText属性等效。  示例:+展开-HTMLpid="TestObj"Hi,I'mstrongcnlei/strong.Welcometomyhomepage:ahref="http://www.cnlei.com"http://www.cnlei.com/a./pscripttype="text/javas..

script标签defer属性的作用

评论(0)浏览(128)分类:JavaScript/Ajax开发技巧
script标签defer属性的作用   使用defer属性可以让脚本在整个页面装载完成之后再解析,而非边装载边解析。   这对于只包涵事件触发的js脚本而言,可以提高整个页面的加载速度。  DEFER 是脚本程序强大功能中的一个“无名英雄”。你可能从没有使用过它,但是看完这里的介绍后,相信你就离不开它。它告诉浏览器Script段包含了无需立即执行的代码,并且,与SRC属性联合..

firefox下button内嵌span会出现移位bug

评论(0)浏览(221)分类:HTML/CSS兼容/XML
firefox下button内嵌span会出现移位bug  在Firefox下,如果button内部嵌入span,button和span的display都为block,width,height都一致时,span无法完全遮盖住button控件,button和span会出现一些边距,在Firefox3.6下面,左边相差3px,顶部相差 2px,不知道是不是Firefox的bug。  在IE浏览器和chrome浏览器下不会出现这种问题。测试代码如下+展开-HTMLstyletype="text/css".jsbu..

javascript document.write问题

评论(0)浏览(287)分类:JavaScript/Ajax开发技巧
javascript document.write问题  在载人页面后,浏览器输出流自动关闭;在此之后,任何一个对当前页面进行操作的document.write()方法将打开—个新的输出流。它将清除当前页面内容(包括源文档的任何变量或值)、因此.假如希望用脚本生成的HTML替换当前页面,就必须把HTML内容连接起来赋给一个变量、使用一个document.write()方法完成写操作,不必清除文档并打开一个新数据流..

IE浏览器和firefox/W3C浏览器获取class属性问题

评论(0)浏览(125)分类:JavaScript/Ajax开发技巧
IE浏览器和firefox/W3C浏览器获取class属性问题  简单来说,就是IE8之前的版本,需使用getAttribute('className')才能获得class属性的值,FF及IE8之后的版本则是W3C 的标准getAttribute('class')。  这是因为IE 混淆了 DOM 对象属性(property)及 HTML 标签属性(attribute),造成了对 setAttribute、getAttribute 的不正确实现。标准参考根据 DOM (Core) Level 1 规范中的描述,getAt..

防止页面缓存

评论(0)浏览(92)分类:HTML/CSS兼容/XML
防止页面缓存htm网页 +展开-HTMLmeta http-equiv="pragma"content="no-cache"meta http-equiv="cache-control"content="no-cache,must-revalidate"meta http-equiv="expires"content="wed,26feb199708:21:57gmt"或者+展开-HTMLmeta http-equiv="expires"content="0" asp网页 +展开-VBScriptresponse.expires=-1response.expiresabsolute=now()-1response.cac..

FF/IE文本查找查找

评论(0)浏览(132)分类:JavaScript/Ajax开发技巧
FF/IE文本查找查找+展开-HTML!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"htmlxmlns="http://www.w3.org/1999/xhtml"headmetahttp-equiv="Content-Type"content="text/html;charset=gb2312"/title和尚/titlestyletype="text/css".adKeyword{color:#FF0000;}/style/headbodyooscriptvarstr..

Firefox/w3c浏览器如何操作XML文档

评论(0)浏览(75)分类:JavaScript/Ajax开发技巧
Firefox/w3c浏览器如何操作XML文档Firefox中的XML DOM  现在我们来看看Firefox中的XML DOM实现,Firefox的开发人员采用更为标准的方法,将其作为JavaScript实现的一部分。Mozilla确保所有基于Gecko的浏览器的所有平台都支持XML DOM。 Firefox中创建一个XML DOM,需要调用document.implementation对象的createDocument()方法。该方法接受三个参数:第一个参数是包含文档所使用的..

Document Object Model Events

评论(0)浏览(142)分类:HTML/CSS兼容/XML
Document Object Model Events1. Document Object ModelEventsEditorsTom Pixley, Netscape Communications Corp.Table of contents1.1. Overview of the DOM Level 2 EventModel 1.1.1. Terminology1.2.Description of event flow 1.2.1. Basic event flow1.2.2. Event capture1.2.3. Event bubbling1.2.4. Event cancelation1.3. Event listener registration 1.3.1. Event..

客户端VBScript和JavaScript相互调用的问题

评论(0)浏览(297)分类:JavaScript/Ajax开发技巧
客户端VBScript和JavaScript相互调用的问题  以前在CSDN碰到一个问题,一个人问VBScript如何调用ajaxpro注册的方法,对这种需求真的很无语。。。。  由于ajaxpro在客户端注册的脚本是JavaScript的,但是JavaScript无法调用VBScript注册的函数或者过程,只能访问VBScript注册的变量,VBScript可以调用JavaScript注册的变量或者方法,所以VBScript使用ajaxpro的异步功能时,需要传递回调..

javascript获取file控件全路径

评论(0)浏览(337)分类:JavaScript/Ajax开发技巧
javascript获取file控件全路径  通过测试,IE7(IE8没有测试过)也是能够获得完整的文件路径名字的,关键问题皆是在firefox,由于ff出于自身安全顾虑,ff3.0开始,只能获得文件名字,但是如果要获得完整的文件名,提供了一个nsIDOMFile的接口,让用户可以获得加密过的文件全路径,这个仅在ff3.0以上支持,其他浏览器皆不支持。以下具体解释是网上某牛人的帖子,解释了firef..

firefox oninput事件对应IE onpropertychang事件

评论(0)浏览(144)分类:JavaScript/Ajax开发技巧
firefox oninput事件对应IE onpropertychang事件  浏览器如何捕获输入控件正在输入的内容,onblur事件需要输入控件失去焦点后才能出发,有些时候又不希望用onkeydown或者onkeyup,这是考虑onpropertychange【IE】或者oninput【firefox】事件,能够捕获每次输入值的变化。  firefox的oninput还是不如IE浏览器下的onpropertychange事件好用,firefox下用JavaScript脚本设置输入控件的值并不会..

Firefox上传文件获取全路径问题

评论(0)浏览(151)分类:JavaScript/Ajax开发技巧
Firefox上传文件获取全路径问题firefox上传文件时只能获取图片的文件名不能获取全路径,因此不能预览,怎么解决呢? ===========  firefox,ie7,ie8都是不能直接访问本地文件的。比如+展开-HTMLimgsrc="C:\DocumentsandSettings\Administrator.WWW-00E83A94D30\MyDocuments\MyPictures\winter.jpg"/会给你显示一个X,只有IE6下才有这个权限可以访问,高版本的浏览器出于安全考..

ajax指定为post但是未设置content-type或未指定键时时如何获取提交的内容

评论(2)浏览(435)分类:JavaScript/Ajax开发技巧
ajax指定为post但是未设置content-type或未指定键时时如何获取提交的内容  今天在CSDN看到一个ajax指定了提交方式为post,但是设置了content-type为text/plain的时,如何在提交的页面获取提交值的问题。由于content-type为text/plain,动态页并未帮你处理成键值对的形式,所以你得自己使用2进制流数据生成对应的string类型的数据。  1)要生成键值对形式,你得指定content-type为“application/x-www-form-urlenco..

textarea DOM Range操作方法集合

评论(0)浏览(93)分类:JavaScript/Ajax开发技巧
textarea DOM Range操作方法集合  在DOM里面操作textarea里面的字符,是比较麻烦的。于是我有这个封装分享给大家,测试过IE6,8, firefox ,chrome, opera , safari。兼容没问题。  注意:在firefox下 添加字符串的时候有个bug 就是scrollTop 会等于0,当然解决了,但是不够完美。如果有高手也研究过,麻烦指点下。完整测试代码:+展开-HTMLtextareaid="testlujun"style="wid..

扩展IE下的input selectionStart selectionEnd属性

评论(0)浏览(503)分类:JavaScript/Ajax开发技巧
扩展IE下的input selectionStart selectionEnd属性  firefox有selectionStart和selectionEnd属性,指示被选择的内容的开始和结束位置,如果没有选择,则selectionStart和selectionEnd一样。IE没有selectionStart selectionEnd属性,可以使用下面的代码扩展。+展开-HTMLinputonclick="selStart(this)"value="1,22,333,2,322,6,3321"/scripttype="text/javascript"functionselStart(o){if(docume..

JS/Exploit-DialogArg.gen特洛伊木马程序

评论(0)浏览(133)分类:JavaScript/Ajax开发技巧
JS/Exploit-DialogArg.gen特洛伊木马程序  搞幽啊,showModalDialog {url:} 放在script标签之间竟然变成了JS/Exploit-DialogArg.gen特洛伊木马程序,被麦咖啡给杀掉了,O(∩_∩)O哈哈~  如果你的电脑安装有麦咖啡,只要将下面的内容保存在文本类型的文件里面,如.txt,.aspx..jsp等等里面,就会被识别为JS/Exploit-DialogArg.gen特洛伊木马程序,然后杀掉,script标签之间的js代码全..