Blog

5 search results for:

1

Drawing Module Script Development Case Study

/ in Blog / by melody.li
About the client: This is an import and export corporation which built their plastic bags factory in Shenzhen of Guangdong province and runs several decentralized branches which performed its own…
2

JavaScript继承详解

/ in Blog / by simon
这一章我们将会重点介绍JavaScript中几个重要的属性(this、constructor、prototype), 这些属性对于我们理解如何实现JavaScript中的类和继承起着至关重要的作用。 this this表示当前对象,如果在全局作用范围内使用this,则指代当前页面对象window; 如果在函数中使用this,则this指代什么是根据运行时此函数在什么对象上被调用。 我们还可以使用apply和call两个全局方法来改变函数中this的具体指向。 先看一个在全局作用范围内使用this的例子: 函数中的this是在运行时决定的,而不是函数定义时,如下: // 定义一个全局函数 function foo() { console.log(this.fruit); } // 定义一个全局变量,等价于window.fruit = "apple"; var fruit = "apple"; // 此时函数foo中this指向window对象 // 这种调用方式和window.foo();是完全等价的 foo(); // "apple"…
3

使用javascript检测浏览器的相关特性

/ in Blog / by simon
一、检测浏览器的名称 问题: 不同的浏览器对JavaScript的标准支持也有不同,有时希望脚本能够在不同的浏览器上都能运行良好,这时需要对浏览器进行检测,确定其名称,以针对不同的浏览器编写相应的脚本。 解决方案: 使用navigator对象的appName属性。 比如,要检测浏览器是否为IE,可以这么做: var isIE = (navigator.appName == "Microsoft Internet Explorer"); document.write("is IE?" + isIE); 对于FireFox,navigator对象的appName属性值为"Netscape";Opera9.02的 appName属性值为"Opera"(其更早版本可能不同); 二、检测浏览器的版本号: 问题: 随着浏览器的版本的更迭,浏览器所支持的脚本特性也在变化,有时候就需要针对不同的版本编写相应的脚本,那么如何获得浏览器的版本号? 解决方案: 通过解析navigator对象的userAgent属性来获得浏览器的完整版本号。 IE将自己标识为MSIE,后面带一个空格,版本号以及分号。所以我们只要取空格和分号之间的部分即可。如Windows XP SP2所带的IE的userAgent属性值为"Mozilla/4.0 (compatible; MSIE…
4

ActionScript和网页JavaScript互相调用

/ in Blog / by sophie
JavaScript和ActionScript互相调用时,其实有个非常好的特性,不过貌似很少有人提到这个特性:它们之间的数据类型对方均可以识别。因此,你可以通过swf提供的接口来传递对象、数组、字符串等等。不过它们之间传递的参数的值的长度有限制(具体长度还没仔细测试),因此你不能把JavaScript中的一个超大的对象直接传递进去。不过即使是这样,已经非常好用了,看看示例代码: as2 代码: 1) import flash.external.*; 2) // 创建一个行的TextField来显示调用结果 3) var t:TextField = this.createTextField(’t’, this.getNextHighestDepth(), 10, 10, 300, 200); 4) t.text = ’ready’; 5) // 这个是要给JavaScript调用的函数 6) function test(obj){ 7)…
5

JavaScript学习枝节点

/ in Blog / by motta
这篇不是教程,只是我学习时的某些小问题的总结。 1. JavaScript是一种弱类型语言,可以说是一种伪面向对象语言,各种规范不是很严谨,像结尾结束符号“;”也是可有可无,字符串之类分段也可以后加””进行换行,更不用说不用指定类型,直接var i= 333; 。 2. 跨浏览器开发时,尽量不要对浏览器版本进行测试,尽可能进行能力测试,这是各种JS框架通用做法,值得学习。 3. 对和现有JS框架共同开发时,尽可能使用自己的命名空间,因为假如不这么做,相同的命名JS将只会执行其最后定义,这和Java等语言的重写不一样的地方,使用自己的命名空间,其内部定义作用域可以限定在其内部,引用某某老师的话就是“唯一性,不共享”。 4. ()的作用,一,分割作用,和其他高级语言的用法一致,二,运算符,作用是立即执行。 举例像在jquery源码里面经常使用到的(function(){//要运行的代码})() 将function等括起来的就起到分割作用,后者着对这个匿名函数立即执行。后者经常用于闭包。 5. 与上个类型一个javascript常用语句 window.onload = init ; 与window.onload = init();区别前者将 onload事件的指针指向init函数,后者则是执行init函数,因为多了个(),所以后者是需要return的。 6. 闭包,最难理解的一个概念,定义:闭包允许你引用存在于外部函数中的变量。然而,它并不是使用该变量创建时的值,相反,它使用外部函数中该变量最后的值。其作用很大,举例,匿名自执行函数,像某些UI的初始化,只需要执行一次,就可以使用 7. 各种内置对象的简写,Object 为:{} ,就是说new…

Need Translation Service?

Please enter your personal details and we will contact you shortly.