摘要: 页面的编码是gb2312js的编码字符集需要utf-8在外联js的代码中加入charset="utf-8"即可 <script src="js/do1.js" type="text/javascript" charset="utf-8"></script> 阅读全文
posted @ 2012-01-19 16:04 Ballad1939 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 可视界面设计的工具箱1、使用浮动控件进行简化和解构很多应用程序都有一套与内容紧密相关的控件,例如一个列表中的删除按钮和记录的编辑按钮。为了方便定位,通常这些控件放在了每条记录的后面,但是这种情况下就造成了大量的重复。多数时间里,用户并不需要这些控件,需要时,也不仅仅需要其中一个特定条目的空间。使用浮动空间,在用户移动到一个特定区域后才显示的方式,可以简化界面。例如,当鼠标停在你想编辑的记录上时,一个编辑按钮就会显现出来,但是其他记录的编辑按钮仍然保持隐藏。悬浮控件是一个很棒的解构和简化界面的方法,但是在使用这个方法前,还需要考虑两件事。首先考虑控件是否能被找到。控件是否足够显著以吸引用户注意? 阅读全文
posted @ 2012-01-19 16:03 Ballad1939 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 什么是用户界面?用户界面设计并不仅仅是考虑如何摆放按钮和菜单,更为重要的是考虑应用程序或设备如何与用户互动。用户在第一次使用一个界面时,仍然能发现某些元素是他们所孰知的。正如Jef Rashkin所说:”对消费者而言,界面就是产品“。用户一直看到和使用的都是用户界面,而不是深藏在应用程序背后的技术体系结构。把界面做好,这将极大地提高用户使用产品的愉悦感,用户也能很容易就掌握产品的使用。所以从界面设计开始,然后再开始应用程序后台引擎编码,要好于先开始编码,再给它裹一层界面。所有伟大的界面都具有以下八个品质或特点。1、清晰。通过使用文字、流程图、层级图、图标等元素,避免用户对界面的模糊认识。清晰的 阅读全文
posted @ 2012-01-19 16:03 Ballad1939 阅读(99) 评论(0) 推荐(0) 编辑
摘要: ECMAscript参数在内部是用一个数组来表示的。函数接收到的始终是这个数组,而不关心这个数组包含哪些参数,是否有参数,有几个参数。在函数体内可以通过arguments对象来访问这个参数数组,从而获取传递给函数的每一个参数。第一个元素是arguments[0],第二个是arguments[1]...以此类推。使用arguments.length属性来确定传入多少个参数。function howManyArgs(){alert(arguments.length);}howManyArgs(10);howManyArgs();howManyArgs(10,20);可以与命名参数一起使用funct 阅读全文
posted @ 2012-01-19 16:01 Ballad1939 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 变量的两种类型:1、基本类型。保存在栈内存中的数据,保存在内存中的一个位置。2、引用类型。栈内存保存的是指向对象的一个指针。实际变量保存于堆内存中。查询引用类型变量时,要先在栈内存中找到变量在堆内存中的地址,然后再顺藤摸瓜找到堆内存中的值。栈内存中的数据可以顺序访问,堆内存中的数据像是在数据池中,不可顺序访问。可以给引用类型添加属性和方法,而不可以给基本类型添加。var person=new Object();person.name="Nicholas";alert(person.name); //"Nicholas"var name="Nic 阅读全文
posted @ 2012-01-19 15:58 Ballad1939 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 对于有块级作用域的语言来说,for语句初始化变量的表达式所定义的变量,只会存在于循环的环境中。而对于javascript来说,由for循环创造的变量,即使在for循环结束后,也依旧会存在于外部执行环境中。for(var i=0;i<10;i++){doSomething(i);}alert(i); //10以下两种情况的作用域不同:function add(num1,num2){var sum=num1+num2;return sum;}var result=add(10,20);alert(sum); //出现错误因为sum不是有效变量function add(num1,num2){s 阅读全文
posted @ 2012-01-19 15:57 Ballad1939 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 垃圾收集器必须跟踪哪个变量有用,哪个变量没用,对于不再有用的变量打上标记。对标识无用变量的策略将会因实现而异,主要有标记清除和引用计数两种办法。1、标记清除:使用”进入环境变量列表“和”离开环境变量列表“。对进入环境的变量标记,对离开环境的变量也进行标记。IE、FireFox、Opera、Chrome和Safari浏览器使用变量标记方式。2、引用计数。增加一次引用+1,引用改变或该值被赋予另一个变量,则引用次数-1。当引用计数为0时,收回变量。BOM对象和DOM对象会存在循环引用问题,需要在最后给引用赋值为null。IE采用临界值的办法确定何时进行垃圾收集。具体点说就是256个变量,4096个 阅读全文
posted @ 2012-01-19 15:56 Ballad1939 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 1、利用.length增加或减少数组长度var colors=["red","blue","green"];colors.length=2; //数组长度强制变为2alert("colors[2]"); //undefinedcolors[colors.length]="black";//增加颜色black,数组长度又变3colors[99]="brown"; //在位置99处增加颜色brownalert(color.length); //数组长度变为1002、数组的toSt 阅读全文
posted @ 2012-01-19 15:56 Ballad1939 阅读(3109) 评论(0) 推荐(0) 编辑
摘要: js 正则表达 阅读全文
posted @ 2012-01-19 15:55 Ballad1939 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 1、函数是对象,函数名是指针function sum(num1,num2){return num1+num2;}alert sum(10,10); //20var anotherSum=sum; //函数名是指针alert(anotherSum(10,10)); //20sum=null;alert(anotherSum(10,10)); //202、函数声明alert(sum(10,10));function sum(num1,num2){return num1+num2; //可以执行,因为代码执行前,解析器已读取声明并列入执行环境}alert(sum(10,10)); //不可执行,此. 阅读全文
posted @ 2012-01-19 15:54 Ballad1939 阅读(217) 评论(0) 推荐(0) 编辑