在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,和’, “, $ & 等等符號“平等並列”的符號。
用於表示時間日期數據的對象。一個時間日期對象中包括了有關時間日期的各項具體信息,比如年,月,日,時分秒,毫秒,星期。
定義一個時間日期對象有以下幾種形式:
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通常就只用於獲取在事件發生的時候的有關信息,比如:鼠標該時刻的坐標位置(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>