Web开发网 > 站内搜索 > JavaScript 闭包
efox3.6快了许多,感觉还不错的。但是今天发现在firefox12地址栏中输入javascript :alert(123)这种javascript 脚本时,无法执行,打开firebug看发现尽然出错了:uncaught exception:referenceError:alert is not defined。 使用firefox3.6直接在地址栏输入javascript 脚本都是可以执行的,升级了到firefox12就不行了? 网上查了一下,说是firefox7+版本以后不支持地址栏运行javascript 脚本了,需要安装tab_utilities-1.1.5-fx.xpi扩展。+_+。http://www.w3dev.cn/article/20120824/firefox-url-address-can-not-execute-javascript.aspx
方法主要有一下两种: (1)最原始的方式在html页面直接用img标签加载显示照片。该方法在网络速度比较慢或者要显示的照片比较大的时候会页面出现空白的等待过程,并且不能开始给用户看到照片大概的情况,用户体验比较不好 (2)在html页面先用img标签加载显示照片的缩略图,同时用javascript 隐藏的加载照片的原图,等照片大图加载完成后再将原图显示到页面中。以下是流程图:3.解决方案 QQ 相册最近做的一些优化方法解决了上诉两个方法的缺点和满足了用户查看照片的需求:第一时间看到照片大概情况和尽可能快的看到清晰的原图。该方法使用缩略图 和原图同时加载并叠加显示,先加载缩略图并http://www.w3dev.cn/article/20120816/javascript-image-load-Fuzzy-To-Clear.aspx
javascript 无法获取img文件头数据,真的是这样吗?本文通过一个巧妙的方法让javascript 获取它。 这是大部分人使用预加载获取图片大小的例子:var imgLoad = function (url, callback) { var img = new Image(); img.src = url; if (img.complete) { callback(img.width, img.height); } else { img.onload = function () { callback(img.widhttp://www.w3dev.cn/article/20120816/javascript-image-preload-get-image-size.aspx
计算为 0,但 Javascript 上没有任何效果。A HREF=javascript :void(0)单此处什么也不会发生/A 下面的代码创建了一个超级链接,用户单时会提交表单。A HREF=javascript :void(document.form.submit())单此处提交表单/Aa href=#与 a href=javascript :void(0) 的区别 链接的几种办法#包含了一个位置信息默认的锚是#top 也就是网页的上端而javascript :void(0) 仅仅表示一个死链接这就是为什么有的时候页面很长浏览链接明明是#是跳动到了页首而javascript :void(0) http://www.w3dev.cn/article/20120816/javascrript-void-0.aspx
tion语句来定义函数。例如,先在地址栏中输入: javascript :function hello(){alert(Hello!);}确定之后,再次在地址栏中输入: javascript :hello()即可看到弹出窗口。3.3 调用函数 其实在地址栏里运行脚本的作用域就是当前页面的脚本作用域,利用这个特点我们除了可以简单的执行脚本语句,还可以辅助我们调试脚本,比如我希望察看 一些变量的值,例javascript :alert(mythinkingNumber),调用函数,例javascript :getURL(),例 javascript :alert(Math.abs(-10)+10),而http://www.w3dev.cn/article/20120816/browser-address-execute-javascript-code.aspx
script type=text/javascript for (var i = 1; i = 12; i++) document.write('option value=' + i + '' + i + '/option'); /script /selectnbsp;月nbsp;nbsp; select name=birthday_d id=birthday_d class=select_b_div style=width: auto; script type=text/javascript for (var i http://www.w3dev.cn/article/20120807/javascript-compute-age.aspx
1,]; 这句代码在IE9之前曾被称为世界上最短的IE判定代码。代码虽短但确包含了不少javascript 基础知识在里面。在这个例子中代码执行时会先调用数组的toString()方法,执行[1,].toString()在IE6,7,8中将会得到1,。然后表达式就变为!-1,。再尝试把1,转换成数值类型得到NaN ,再对NaN取负得到值仍为NaN。最后执行!NaN返回true。下面通过分解这个语句来回顾下代码中所涉及到的javascript 知识:浏览器的数组字面量解析差异 [1,]表示使用javascript 的数组字面量定义了一个数组。 在IE6,7,8中数组有两个元素,数组中的值分别为1,uhttp://www.w3dev.cn/article/20120807/javascript-check-ie8-browser-shortest-expression.aspx
计时器,调用console.timeEnd(name)停止计时器并输出所耗时间(毫秒)。console.timeEnd(name)停止同名的计时器并输出所耗时间(毫秒)。console.profile([title])打开Javascript 性能测试开关。可选参数title会在打印性能测试报告时在报告的开头输出。console.profileEnd()关闭Javascript 性能测试开关并输出报告。console.count([title])Writes the number of times that the line of code where count was called was ehttp://www.w3dev.cn/article/20120805/javascript-console-obejct.aspx
功能描述:javascript 控制窗口大小,禁止调整窗口大小。只能最大化,最小化窗口测试浏览器:IE7~8,Firefox3.6通过在页面添加下面的代码即可,窗口大小自己定义script type=text/javascript var maxw = 500, maxh = 600;//定义窗口大小 window.onload = function () { window.resizeTo(maxw, maxh); window.onresize = function () { var w = screen.availWidth http://www.w3dev.cn/article/20120726/javascript-control-window-size.aspx
要抠JavaScript 效果代码,不是一件容易的事,需要有一定的JavaScript 基础,掌握一定的调式工具,如firebug或者google的开发人员工具,强烈推荐firebug。 我的方法大概如下,使用firebug1)找到效果代码函数名称或者函数体 a)如果容器直接写了事件就简单了,直接就找到了。 b)要不需要找到动画那块内容,看容器或者子内容是不是有id或者一些特别的样式之类的,一般是ID的多,这个是jq设置效果时要获取选择DOM对象时用到的。然后根据特殊的样式或者id查找当前页面JavaScript 代码块和导入的所有js文件定位函数体或者函数名称2)分析效果函数体,找到关联http://www.w3dev.cn/article/20120726/get-javascript-effect-code.aspx
JavaScript 如何获取并且执行flash中flash.external.ExternalInterface.addCallback注册的函数 测试浏览器:IE6,IE7,IE8,Firefox3.6,谷歌chrome 14.0.835.202 mAS脚本function loadPicture(){//......代码......//......代码......}flash.external.ExternalInterface.addCallback(forJS, null, loadPicture);//注册JavaScript 中调用的回调函数输出swf到html页面的JS脚http://www.w3dev.cn/article/20120511/JavaScript-get-flash.external.ExternalInterface.addCallback-function.aspx
2312style type=text/css.dvswf{ position:absolute;left:-100000px;top:-10000px;}/stylescript type=text/javascript src=js/jquery.js/script/headbodydiv id=dvswf class=dvswf/divscript type=text/javascript var swfHTML = document.all ? 'object id=swfId classid=clsid:D27CDB6E-AE6D-11cf-96B8-444553540http://www.w3dev.cn/article/20120511/JavaScript-call-flash.external.ExternalInterface.addCallback-function.aspx
javascript 中与正则表达式有关的匹配字符串的函数主要有RegExp类的方法exec(string)以及String类的方法 match(regex),当然还有一些其他的方法,这里不作讨论,但是可能不少程序员都会混淆exec和match,这里列举二者的重点特性:exec是正则表达式的方法,而不是字符串的方法,它的参数才是字符串,如下所示:var re=new RegExp(/\d/);re.exec( abc4def );或者使用perl风格:/\d/.exec( abc4def );match才是字符串类提供的方法,它的参数是正则表达式对象,如下用法是正确的:abc4def.mathttp://www.w3dev.cn/article/20120423/javascript-exec-match-method.aspx
http://www.w3dev.cn/article/20120315/firefox-javascript-manipulate-Clipboard.aspx
Javascript 中void是一个操作符,该操作符指定要计算一个表达式但是不返回值。 void 操作符用法格式如下:1. javascript :void (expression)2. javascript :void expression 如:a href=javascript :void(0)单击此处看看效果/a //实际上相当于一个死链接。 如:a href=javascript :void(document.form.submit())单击此处提交表单/a //用户单击时会提交表单 注意:a href=#单击此处/a 与a href=javascript :void(0)单击此http://www.w3dev.cn/article/20120315/javascript-void-0-pound-sign.aspx
javascript 实现的html内容截断,得到文章列表中的摘要信息。一般博客的首页只显示文章的摘要,点击标题进入以后查看全文。 下面是JavaScript 实现的html内容截断,获取html文章内容的摘要。 function removelosttag(tags, nowtag) { for (var i = tags.length - 1; i = 0;i-- ) if (tags[i].indexOf(nowtag) == 1) { tags.splice(i, 1); break; } } function HtmlSubstring(html,http://www.w3dev.cn/article/20120131/javascript-cut-off-html-content-get-summary.aspx
这本来是翻译Estelle Weyl的《15 JavaScript Gotchas》,里面介绍的都是在JavaScript 编程实践中平时容易出错或需要注意的地方,并提供避开这些陷阱的方法,总体上讲,就是在认清事物本质的基础样要坚持好的编程习惯,其实这就是Douglas Crockford很久以前提出的JavaScript 风格要素问题了,有些内容直接是相同的,具体请看《Javascript 风格要素(1)》和《Javascript 风格要素(2)》。在翻译的过程中,我又看到了贤安去年翻译的《JavaScript 的9个陷阱及评点》,其内容又有些交叉在一起,所以我就在现有翻译的基础上做了一个简单的拼http://www.w3dev.cn/article/20111217/javascript-gotchas.aspx
动态加载JavaScript 文件和CSS资源为Web前端开发提供了巨大的灵活性,同时也实现了lazy load和按需加载,相比XMLHttpRequest而言其没有跨域的限制使其广泛应用。其基本原理是:在页面DOMReady后,利用JavaScript 把指定文件路径的script和link元素插入到页面中,然后判断其加载状态再进行继续操作。 YUI的Get就专门提供了一套动态加载的机制,是YUI最基础的功能之一。在YUI中利用Get加载JavaScript 和CSS资源会在HTML的head节点中插入如下代码:script id="..." type="text/javascript " srhttp://www.w3dev.cn/article/20111217/js-lazy-load.aspx
公司来说,他们的评估和他们的代码是息息相关的,风格应该是一个至关重要的受关注内容。 我们使用许多编程语言,但在某一方面,Javascript 是最重要的,它是浏览器的语言。当人们访问我们的站点时,他们将邀请我们的Javascript 程序在他们的机器中执行。我们有义务使那些程序执行好。 没有好的关于Javascript 编程的课本。在网页使用Javascript 的大多数人学习它是通过从糟糕的书、糟糕的站点和糟糕的工具中复制相当糟糕的例子。我们这里有极好的Javascript 程序员社区,但我们依旧能从较好的风格实践中获益。 为了证明这个问题,我将从公共网站中抽取一些程序,展示它们如何能被改进。http://www.w3dev.cn/article/20111217/the-elements-of-javascript-style-part-one.aspx
ev.ctrlKey&&!ev.altKey){box.value='';box.focus();}} 在函数kd中,从两个地方调用函数mt。通过使它成为一个内部函数,我们能有效的减少kd所用到的全局变量的数目,这将降低了干扰其他组件的可能性。kd依旧是一个烂摊子,但它现在不是一无是处的烂摊子。原文:Douglas Crockford的The Elements of JavaScript Style Part Two: Idioms来源:http://dancewithnet.com/2008/01/30/the-elements-of-javascript -style-part-two/http://www.w3dev.cn/article/20111217/the-elements-of-javascript-style-part-two.aspx
和使用的都是第1种。四、匿名函数的应用《Javascript 的一种模块模式》中的第一句话就是“全局变量是魔鬼”。配合var关键字,匿名函数可以有效的保证在页面上写入Javascript ,而不会造成全局变量的污染。这在给一个不是很熟悉的页面增加Javascript 时非常有效,也很优美。实际上,YUI以及其相应的范例中大量使用匿名函数,其他的Javascript 库中也不乏大量使用。Javascript 的函数式编程(functional programming)的基石。具体请看《用函数式编程技术编写优美的 JavaScript 》和《函数式JavaScript 编程指南》。 http://www.w3dev.cn/article/20111204/javascript-anonymous-function.aspx
过类库吗? 比如 DOM 的扩展。有使用过服务端 JavaScript 框架吗?ECMAScript 和 JavaScript 的区别是什么?有用过 JavaScript 代码校验工具吗?有读过或推荐的 JavaScirpt 书籍吗?会为你的 JavaScript 代码写单元测试吗?初/中级: 为什么基本上所有对象都有 toString 方法?知道 Mozilla Firefox 用的是哪个解析器吗? 其他浏览器呢?JavaScript 支持 lambda 函数吗?你用过或写过的最有用的 JavaScript 函数是什么?JavaScript 有块级作用域吗?能解释下 Ajax/XMLHtthttp://www.w3dev.cn/article/20111128/javascript-programmer-interview-question.aspx
o Javascript Frameworkscript.aculo.us 是一个优秀的跨浏览器JavaScript 用户界面库,提供包括动画,拖放,Ajax,单元测试等API。13. Javascript MVC FrameworkJavaScriptMVC 是一个开源的JavaScript 框架,包含最好的jQuery开发理念。14. Spry Javascript FrameworkSpry 是一个用于快速构建支持的Web应用程序的JavaScript 框架。15. MooTools Javascript FrameworkMooTools 是一个模块化的、面向对象的JavaScript 框架http://www.w3dev.cn/article/20111128/javascript-programmer-javascript-framework.aspx
oveObserver=function(observer){if(!observer.Update){throw'Wrongparameter';}this.observers.RemoveAt(this.observers.IndexOf(observer,0));}JavaScript 中的继承 在JavaScript 中有许多方法来模拟继承。一个非常简单的方式是定义一个名称为 Inherits 的方法,在该方法中,你可以复制一个对象的所有属性和方法到另一个对象中。+展开-JavaScriptfunctionInherits(base,extension){for(varpropertyhttp://www.w3dev.cn/article/20111107/javascript-Observer.aspx
认用逗号为分隔符+展开-JavaScriptvara=[1,2,3,4,5];varb=a.join("|");//a:[1,2,3,4,5]b:"1|2|3|4|5" 数组是JavaScript 提供的一个内部对象,它是一个标准的集合,我们可以添加(push)、删除(shift)里面元素,我们还可以通过for循环遍历里面的元素,那么除了数组我们在JavaScript 里还可以有别的集合吗? 由于JavaScript 的语言特性,我们可以向通用对象动态添加和删除属性。所以Object也可以看成是JS的一种特殊的集合。下面比较一下Array和Object的特性: Array:新建:var arhttp://www.w3dev.cn/article/20110901/javascript-array-method.aspx
1.5 JavaScript 解析机制JavaScript 解 析过程可以分为编译和执行两个阶段。编译也就是我们常说的JavaScript 预处理(即预编译)。在预编译期,JavaScript 解释器将完成对 JavaScript 代码的预处理,也就是说把JavaScript 脚本代码转换成字节码。在执行期,JavaScript 解释器借助执行期环境把字节码 生成机械码,并按顺序执行,完成程序设计的任务。1.5.1 预编译JavaScript 是一种解释型语言,而不是编译型语言。所谓解释型语言,就是代码在执行时才被解释器一行行动态编译和执行,而不是在执行之前就完成编译。简单说,解释型语言就是边编译边执行,而编http://www.w3dev.cn/article/20110813/JavaScript-Resolution-mechanisms.aspx
http://www.w3dev.cn/article/20110813/javascript-chain.aspx
http://www.w3dev.cn/article/20110813/3248.aspx
有变量name。该模式的应用场景还是很多的,是不是遇 Javascript 设计模式之工厂模式Factory 工厂模式Factory:先创建一个抽象类,然后基于这个抽象类派生出子类,并在子类中创建工厂方法,从而把实例化推迟到对应的子类中进行,说实话,工厂模式在javascript 中的应用有些牵强,毕竟javascript 不像java存在硬编码带来的困搅,要学习的只是模式的思想,切忌因为模式而模式。 不妨举个偏激点的例子,为tab切换、下拉列表等组件添加定位,渐隐,延迟等效果,我们可以先为这些组件定义一个接口:+展开-JavaScript varIwidget=newInterface("http://www.w3dev.cn/article/20110807/javascript-design-mode.aspx
JavaScript $=prototypeToYuiAdapter; 这样的话,在prototype中就可以使用YUI中的get方法了。本人并不是很推崇这种模式,所以不多做阐述,事实上我觉得不到万不得以,我们根本不需要使用这种模式,作为一名负责任的设计者,我宁可做代码重构也不希望使用该模式,只能作为无奈之下的过渡型方案使用。Javascript 设计模式之门面模式,观察者模式 门面模式:这应该是所有脚本框架中都用到的,最基础的设计模式,随便找个框架中定义好的方法看看就行了,比如说YUI中的setStyle方法等等等等。在这里就不多阐述了。 观察者模式:该设计模式应用在javascript http://www.w3dev.cn/article/20110807/javascript-design-mode-2.aspx
首页 上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] 下一页 尾页 8/13页,每页显示30条,共370条相关记录