字符串中的特殊字符:
在js中,双引号字符串中的双引号内容和单引号字符串中的单引号内容都必须进行转移,形式如下:
var str1 = "my mother say:\"don‘t speak with stranger\". ";
var str2 = ‘my mother say:"don\‘t speak with stranger". ‘;
js中的常用转义字符有:
“ ? \” ‘ ? \’ 回车符 ? \r 换行符 ? \n tab符 ? \t \ ? \注意: 回车符,换行符,空格和tab符其实也是跟a,b,c,d,和’, “, $ & 等等符号“平等并列”的符号。
时间日期(Date)对象:
用于表示时间日期数据的对象。一个时间日期对象中包括了有关时间日期的各项具体信息,比如年,月,日,时分秒,毫秒,星期。
定义一个时间日期对象有以下几种形式:
d1 = new Date(); //定义一个表示“当前时间”的日期对象, d2 = new Date(“2013/9/25 11:18:19”); 用一个字符串来定义一个指定时间(时刻)的日期对象 d3 = new Date(2013, 9, 25, 11, 18, 19); 用多个(至少3个)数字来定义一个指定时间的日期对象 d4 = new Date(2324624252312); 用一个数字来定义个指定时间的日期对象。
此数字代表的是从1970年1月1日午夜0点0分0秒(甚至0毫米)开始算起所经历过的毫秒数。注意,一秒等于1000毫秒。——实际上,我们可以理解为:“时间”这种数据,在js中,其实其本质上只是存储了一个数字。如果该数值为负值,则表示往前推算。实际上,据此,时间是可以进行加减计算的。
这个时间点通常认为是计算机世界的“时间起点/原点”。
时间对象的常用方法:
v1 = d1.toLocaleString();获得时间为“本地表示法” v1 = d1.getTime(); 获得一个时间的“毫米数”——从时间原点开始算起。 以下是获取时间中的某项数据值: v1 = d1.getFullYear(); //获得年数——是一个数字,下同 v1 = d1.getMonth(); //获得月数 ——注意:此数字是从0开始算起的,即只能是:0-11 v1 = d1.getDate(); //获得日期数 v1 = d1.getDay(); //获得星期数 v1 = d1.getHours(); //获得小时数 v1 = d1.getMinutes(); //获得分钟数 v1 = d1.getSeconds(); //获得秒数 v1 = d1.getMilliseconds();//获得毫秒数
以下是设置时间中的某项数据值:
d1.setFullYear( n ); //将d1这个时间对象的年份数设置为n这个数——即修改了其年份,下同。 d1.setMonth( n ); //设置月份数 d1. setDate(n ); //设置日期数 d1. setDay(n ); //设置星期数 d1. setHours(n ); //设置小时数 d1. setMinutes(n ); //设置分钟数 d1. setSeconds(n ); //设置秒数 d1. setMilliseconds(n );//设置毫秒数
网页对象介绍
第一个重要观念:在html文件中的每个标签都是一个对象。
var obj1 = { name:”小花”, age:18, zuofan: functoin (){……}, xiyi: function(){……} } var v1 = obj1.age; alert( v1 ); obj1.age = 19; //过年了,增加了一岁——修改了obj1这个对象的age这个属性的值。 obj1.name = “大花”;
获取网页标签对象的方式:
var obj1 = document.getElementById(“id名”);
操作对象的标签属性:
获取: var v1 = obj1.标签属性名;
赋值: obj1.标签属性名 = 某值;
操作对象的样式属性:
获取:var v1 = obj1.style.样式属性名;——其实这种方式只能获取其“行内样式”
赋值:obj1.style.样式属性名 = 某值;
获取网页标签对象的方式:
var obj1 = document.getElementById(“id名”);
操作对象的标签属性:
获取: var v1 = obj1.标签属性名;
赋值: obj1.标签属性名 = 某值;
操作对象的样式属性:
获取:var v1 = obj1.style.样式属性名;——其实这种方式只能获取其“行内样式”
赋值:obj1.style.样式属性名 = 某值;
事件初步
简单说来,事件就是“动作”,也就是用户所在的某种操作,比如:点击,鼠标移动,双击,。。。。。。
先回顾与加强js的“定义”:js是一门基于对象的事件驱动的脚本语言。
事件有哪些:
鼠标事件: onclick: onmouseover: onmouseout: ondblclick: 双击事件 onmousedown: 鼠标按下去的时候发生(注意此时鼠标还没有抬起来) onmouseup: 鼠标抬起来的时候发生 onmousemove: 鼠标移动的时候发生——移动无处不在。
键盘事件: onkeypress: 按键点击一次发生。 onkeydown: 按键按下去的时候发生 onkeyup: 按键抬起来的时候发生
表单事件: onsubmit : 当一个表单正要“提交”的时候发生 onfocus: 当一个表单项“获得焦点”的时候发生。 onblur: 当一个表单项“失去焦点”的时候发生 onchange: 当一个表单项的数据发生改变的时候——通常只用于select标签的选项改变。
其他: onload: 当网页“一加载成功”的时候发生,也就是网页打开的时刻——onload在一个页面上只能出现一次。 onload只能写在body标签上,或者要么就不在标签中写,而是在脚本中使用window.onload的实线。
小结:事件随时发生,无处不在,只在于我们想要在哪个对象上使用哪个事件来完成什么工作。
其基本的代码模式为:
<标签名 …… on事件名=”函数名f1();” >……</标签名> <script> function f1(){ //这里就是我们要做的工作!!!!! } </script>
则其基本含义是: 某个对象发生什么事件的时候会去调用某个函数以完成某种任务。
event对象
event是一个浏览器内部的对象(注意,不是网页标签对象),它代表事件发生的时候跟事件有关的相关信息的集合体(对象就是信息的集合体)——它只在事件发生的时候存在!
event通常就只用于获取在事件发生的时候的有关信息,比如:鼠标该时刻的坐标位置(x和y),是哪个网页对象发生了该事件,发生事件的时候是哪个鼠标按键触发的,或哪个键盘上的键。以上信息由以下几个event属性来获取:
event.clientX ——获取事件发生的时候鼠标的x坐标位置
event.clientY ——获取事件发生的时候鼠标的y坐标位置
event.target ——获取事件发生的时候的那个标签对象(适用于FF)——类似getElementById获取的对象
event.srcElement ——获取事件发生的时候的那个标签对象(适用于IE)——类似getElementById获取的对象
——事件发生的时候的那个标签对象通常被称为“事件源”。
event.keyCode ——键盘事件发生的时候的按键的键值——键盘上每个键都对应一个数字值。
this和event的使用对比: <标签名1 on事件名=”函数名f1(this)” >。。。。。</标签名1> <标签名2 on事件名=”函数名f2(event)” >。。。。。</标签名2> <script> function f1 ( obj ) { //在此范围内,obj代表的就是“标签名1”这个对象,类似使用getElementById获得的对象 } function f2 ( evt ) { //在此范围内,evt代表的是事件发生的时候的event对象。 //这里使用evt,基本上也就是使用其以下属性(根据需要取用): var v1 = evt.clientX; //获得鼠标当时的x坐标 var v2 = evt.clientY; //获得鼠标当时的y坐标 var v3 = evt.keyCode; //获得键盘的按键值(只对键盘事件有效) var v4 = evt.target; //获得事件源对象,IE是:evt.srcElement; } </script>