javascript的概念
一種編程語(yǔ)言,由瀏覽器編譯
js的基本使用
<script type="text/javascript">
</script>
<script type="text/javascript" src="js的地址">
</script>
js的語(yǔ)法
所有數(shù)據(jù)類(lèi)型用var
js的foreach
var a=[1,2,3];
for(var i in a){ //i是數(shù)組下標(biāo)
alert(a[i]);
}
函數(shù)的定義
普通函數(shù)
function 函數(shù)名 () {
}
匿名函數(shù)
var 函數(shù)名=function (){
}
動(dòng)態(tài)函數(shù)
可以使用函數(shù)名 使用不同的函數(shù)邏輯
var 函數(shù)名=new Function(參數(shù)博肋,函數(shù)體);
函數(shù)的調(diào)用
-直接在script中調(diào)用函數(shù)的名字
-在事件中調(diào)用函數(shù)的名字(on....)
對(duì)象
function 類(lèi)名(){
this.屬性=屬性值;
this.方法名=function(){}
}
//創(chuàng)建對(duì)象
var 對(duì)象名=new 類(lèi)名();
對(duì)象.方法;
prototype
//prototype原形
類(lèi)名.prototype.屬性=屬性值;//向原來(lái)的類(lèi)中添加一個(gè)屬性并賦值
類(lèi)名.prototype.方法名=function(){}
全局函數(shù)
var salary=prompt("請(qǐng)輸入工資","");
parseInt();
eval("js代碼");
dom的概念
將html標(biāo)簽和標(biāo)簽的屬性封裝成js對(duì)象踊跟,通過(guò)調(diào)用js對(duì)象的屬性和方法脱盲,可以方便的操作標(biāo)簽点骑,如修改樣式撤师,對(duì)標(biāo)簽的增刪改查等榕堰;
dom的對(duì)象
方法一:getElementById
//通過(guò)id獲取對(duì)象谦趣,獲取出來(lái)的是多個(gè)對(duì)象
var 對(duì)象名=document.getElementById('標(biāo)簽的id');
方法二
//通過(guò)name獲取對(duì)象玉控,獲取出來(lái)的是多個(gè)對(duì)象
var 數(shù)組名=document.getElementByName('name屬性值');
方法三
//通過(guò)標(biāo)簽名獲取對(duì)象飞主,獲取出來(lái)的是多個(gè)對(duì)象
var divs=document.getElementsByTagName('div');
方法四
//通過(guò)選擇器獲取對(duì)象,獲取出來(lái)的是多個(gè)對(duì)象
var divs=document.querySelectorAll(".dd");
常用的屬性
-style 給標(biāo)簽添加樣式
-className 給標(biāo)簽加載css樣式
-innerHTML 給標(biāo)簽的內(nèi)容進(jìn)行賦值
-outHTML 將整個(gè)標(biāo)簽轉(zhuǎn)化成字符串
-outText 獲取標(biāo)簽內(nèi)容
其他
定時(shí)器
-setInteval("函數(shù)名",2000);每格2S執(zhí)行函數(shù)
-setTimeout("函數(shù)名",2000);2s之后執(zhí)行一次
//遞歸思想
function time(){
var d=document.getElementById('a');
var time=new Date().getSeconds();
d.innerHTML=time;
if(time==0){
return;
}
setTimeout("time()",1000);
}
time();
節(jié)點(diǎn)和元素
var elements=d.children;
elements[0].outerText;
elements.nextElementSibling.outerText;
var tr=document.createElement("td");
獲取事件對(duì)象
<a id="a1" href="#" onclick="show(id)">選項(xiàng)1</a>
function show(id){
var a=id;
alert(a.nodeName);
}