JS
JavaScript: --> 嚴格區分大小寫
1、什麼是JavaScript?
是web上一種功能強大的編程語言,用於開發交互式的web頁面
· JavaScript 被設計用來向 HTML 頁面添加交互行爲。
· JavaScript 是一種腳本語言(腳本語言是一種輕量級的編程語言)。
· JavaScript 由數行可執行計算機代碼組成。
· JavaScript 通常被直接嵌入 HTML 頁面。
· JavaScript 是一種解釋性語言(就是說,代碼執行不進行預編譯)。
· 所有的人無需購買許可證均可使用 JavaScript。
HTML:整個網頁的骨架;
CSS:對整個網頁骨架的內容進行修飾(美化)
JavaScript:實現動態的效果
1、內嵌方式:只能使用一次,並且只作用於當前元素;
alert彈窗: alert('Hello World');
2、內聯方式:
關鍵字:不能使用關鍵字命名,命名規範和Java基本相同
3、外聯方式:
Css:
JS 基於對象,不是面向對象
Js 弱變量類型,對於變量的界限沒有那麼明顯
js內置對象:
document;
getElementById(“id”);id唯一,所以元素唯一
getElementByName(“name”);name不唯一
getElementByTagName(“”); 返回帶有指定標籤名的對象集合。
window
函數:isNaN(a) 判斷是否爲數字,返回true,則不是數字;
parseInt(a) 把a轉化成整數數字
eval(String):可計算某個字符串,並執行其中的的 JavaScript 代碼,把string看做js代碼來執行。eval(“10+20+30”)-->60
課堂練習:猜數字遊戲
document.getElementById("userregex").innerHTML="用戶名可用";
document.getElementById("userregex").className="ti";
Document.write(...) 向網頁中寫入
案例:表單驗證 DOM Events
Onblur:失去焦點 寫下一個驗證
Onfocus:獲得焦點
Onclick:鼠標點擊 點擊後才驗證
Onsubmit: 表單提交接收函數返回值,true則提交
Onkeyup: 鍵彈起 寫完驗證
Onload: 加載頁面
Function 函數:
1、使用函數傳參數個數和定義的參數個數可以不一致,多的部分捨棄掉,少的部分爲undefined
2、函數沒有重載,結果是最後一個的計算結果;但是可以使用可變長參數arguments來實現重載;
3、匿名函數的定義和使用:
var f1=function(){.....} result=f1();
運算符:
==和===的區別:===即比較值,又要比較類型;==只比較值
var a=1;var b="1";
a==b:true;a===b:false;
for循環:true爲1,false爲0; true+true=2;
for(var i=10;i;i--) 當i=0時,會自動跳出循環;
For(var i=10;i>-2;i--) 當i=0時,不會退出
數組:
1、給參數,則長度確定;不給,則可以一直加元素
var ary=new Array("hello","hehe","heiehei");
var citys=[["直轄市"],["合肥","蕪湖","淮南","安慶"],["杭州","溫州","紹興","台州"],["南京","蘇州","無錫"],["南昌","上饒"]];
2、var ary=["hello","hehe","heiehei"];//長度可變,可以直接加元素
ary[4]=”niaho” 這時數組長度爲5,ary[3]爲undefined;
3種構造器、一種靜態賦值方法[]
排序:sort() 方法,默認排序規則 ,字符串升序(字典)排序;
定義比較函數,a-b 升序,b-a 降序:
function rules1(a,b){return a-b; }ary2.sort(rules1);
Document.write(...) 向網頁中寫入
Window:
setInterval();一般結合onload(頁面加載時調用)使用
應用:實現圖片輪播、時鐘
setTimeout( ); 在指定時間延遲後執行,只執行一次
利用此方法,實現彈廣告功能--廣告持續3秒結束
彈出確認框 --> 按鈕的實現
confirm("確認需要退出嗎?"); 點擊確定,返回true
Alert(“ ”)普通彈窗
Prompt() 帶有文本輸入的彈窗
window.open("")//新頁面跳轉;location.href("");原頁面跳轉
Location
href 超鏈接
function go(){
location.href="http://www.baidu.com";}
History:
title屬性,鼠標停在上面時會顯示title的內容
//返回到歷史記錄的上一層
超鏈接//跳轉
讓按鈕點擊失效:onclick="javascript:volid(0) "
Document:
tr.className="";// <==> tr.setAttribute("class",""); 設置元素屬性
Document:整個html文件都成爲一個document文檔
Element:所有的標籤都是Element元素(操作的都是Element)
Attribute:標籤裏面的屬性
Text:標籤中間夾着的內容爲text文本
Node:document、element、attribute、text統稱爲節點node
日期:Date new Date() 當前系統時間
正則表達式:RegExp
var reg=/^[a-z]{8,10}$/i; /// var regex=new RegExp("^[a-z]{8,10}$","i");
regex.test(username) --> true / false
Username.match(regex) --> 符合正則表達式的字符串
應用:表單驗證
Check(regex,ele,id){
Var reg=new RegExp(RegExp,“i”);
Var username=ele.value;
Document.getElementById(id).innerHTML=reg.test(username);
}
creatElement
createTextNode
下拉列表級聯關係
兩個下拉列表,後面的隨着前面的改變而改變
歷史遺留DOM:專用、簡潔
Element.className=””;
Element.innerHTML=””;
Element.style.xx=””;
標準HTML DOM:標準化 W3C
Element.setAttribute(“class”,”xx”);
removeChild();
appendChild(D); 在後面加一個D節點
insertBefore(A,E); 在A節點前插入E節點
parentNode ---返回一個父節點
childNodes ---- 返回子節點數組
Document:
getElementById.
createElement
createTextNode
HTML對象:html標籤對應的對象
常用:Table
事件冒泡:
事件觸發元素互相疊加,事件會順序調用
event.target;返回觸發此事件的元素
event.srcElement;對於生成事件的 Window 對象、Document 對象或 Element 對象的引用。(IE屬性)
event.stopPropagation();阻止事件繼續派發,否則會繼續調用div1的事件(IE不支持)
自定義對象:
Image:HTML對象
var img=new Image();
img.scr="286110.jpg";
等價於:
自定義對象3種方式:
//第一種方式:類似於定義函數,推薦大寫
function User(name,age){
//this=new Object();隱藏了這句話
this.name=name;
this.age=age;
this.toString=function(){
console.log("name:"+this.name+",age:"+this.age);
}
}
var obj=new User("long",21);//自定義對象都是Object類型 typeof obj爲:Object
obj.toString();
alert(obj.name+":"+obj.age);
//第二種方式:
var obj2=new Object();
obj2.id=1001;
obj2.price=23.24;
obj2.introduce=introduce;//定義一個方法,
function introduce(){
console.log("第二種方式:"+this.id+":"+this.price);
}
obj2.introduce();//調用定義的方法
//第三種方式:JSON(也是一個對象)使用最多--(批量傳輸或保存)
var obj3={"name":"jack","price":21,"print":print};
function print(){
console.log("第三種方式:"+this.name+";"+this.price);
}
obj3.print();
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.