* js語法* js的動態函數和匿名函數* js動態函數Functionnew Function();* 匿名函數:沒有名稱的函數,起個名稱var add = function(){};* js中全局變量和局部變量* 全部變量:定義標簽中的變量,在頁面的任意位置上都能拿到。* 局部變量:定義在方法內部的變量* js的對象和API* String對象* 屬性:length長度* 方法:* 和HTML相關方法* bold()粗體* fontcolor()字體顏色* sup()上標* sub()下標* 和java中String類似的方法* charAt()返回指定位置的字符* indexof()返回字符的位置* substring(start,stop)截取字符串* substr(start,length)截取字符串* Array數組* 聲明數組* var arr = [22];* var arr = new Array(4或者"abc");* 方法:* concat()鏈接數組或者元素* pop()刪除最后一個元素,返回* push()向末尾添加一個元素,返回長度。* sort()排序* Date對象* var date = new Date();當前時間* 方法:* toLocaleString()顯示當地日期格式* getFullYear()獲取年份* getMonth()獲取月份(0-11)+1* getDate()幾號* getDay()星期幾* getTime()毫秒值* setTime()根據毫秒值設置時間* Date.parse();可以字符串,返回是毫秒值* Math數學* ceil()上舍入* floor()下舍入* round()四舍五入* random()隨機數* RegExp對象* new RegExp("")* var reg = /^表達式$/;(記?。? reg.test(string);(記住)如果匹配返回true,如果匹配不成功返回false。* 全局函數* eval()解析字符串,執行js的代碼。* isNaN()判斷是否是非數字值* parseInt()* BOM瀏覽器對象模型* winodw窗口對象* alert()提示框* confirm()詢問框* setInterval("run()",3000)每隔3秒執行run方法,返回唯一的id值* setTimeout("run()",3000);3秒后執行run方法,返回唯一的id值* 清除定時器* clearInterval(id)* clearTimeout(id)* open("","","")彈出新的窗口* close()關閉窗口* navigator和瀏覽器版本相關* 屬性* history和歷史相關* back()上一頁* forward()下一頁* go(1或者-1)* location和地址相關* href=""獲取和設置鏈接===============================================================================================================================* DOM文檔對象模型* DocumentObjectModel* 文檔:標記型文檔(HTML/XML)* 對象:封裝屬性和行為(方法)* 模型:共性特征的體現* DOM解析HTML* 通過DOM的方法,把HTML全部(元素(標簽)、文本、屬性)都封裝成了對象。文本* DOM想要操作標記型文檔先解析。(解析器)* DOM解析HTML(瀏覽器就可以HTML)* 瀏覽器DOM解析HTML?* DOM的三個級別:* DHTML不是一種編程語言。* html:封裝數據。展示給用戶的數據* css:設置樣式(顯示效果)* dom:操作HTML(解析HTML)* js:提供邏輯(判斷語句,循環語句)* Document:代表整個文檔。* 方法:getElementById("id的值");通過元素的id的屬性獲取元素(標簽)對象。getElementsByName("name屬性值");通過名稱獲取元素對象的集合(返回數組)getElementsByTagName("標簽名稱");通過標簽名稱獲取元素對象的集合(返回數組)* write("文本的內容(html的標簽)")把文本內容寫到瀏覽器上。* createElement("元素名稱");創建元素對象* createTextNode("文本內容")創建文本對象* appendChild("子節點")添加子節點* Element對象* 獲取元素對象* getAttribute("屬性名稱");獲取屬性的值* setAttribute("屬性名稱","屬性的值");設置或者修改屬性的值* removeAttribute("屬性名稱");刪除屬性* 獲取元素下的所有子節點(*****)* ul.getElementsByTagName();* Node:節點對象* nodeName:節點名稱* nodeType:節點類型* nodeValue:節點的值* parentNode獲取父節點(永遠是一個元素節點)IE6-8 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? IE9-11 Chrome FireFoxfirstChild 第一個節點 ? ? ? ? ? ? ? ? firstElementChild?第一個節點lastChild最后一個節點、 ? ? ? ? ? ? ? lastElementChild 最后一個節點nextSibling 下一同級節點 ? ? ? ? ? ? ?nextElementSibling?下一同級節點previousSibling 上一同級節點 ? ? ? ? ?previousElementSibling?上一同級節點
北京
* 如果通過ul獲取北京的子節點,使用是ul.firstElementChild;獲取北京的子節點(IE9-11 Chrome FireFox)* 但是如果IE6-8,需要使用firstChild;文本內容* 使用span的標簽獲取span中間的文本內容(也是對象),需要使用firstChild;(不管是什么瀏覽器)* 方法* hasChildNodes()檢查是否包含子節點* hasAttributes()檢查是否包含屬性* appendChild(node)父節點調用,在末尾添加子節點* insertBefore(new,old)父節點調用,在指定節點之前添加子節點* replaceChild(new,old)父節點調用,替換節點* removeChild(node)父節點調用,刪除節點* cloneNode(boolean)不是父節點調用,復制節點* boolean:如果是true,復制子節點:如果是false,不復制子節點,默認是false* innerHTML:獲取和設置文本內容。* innerHTML屬性:* 獲取文本內容* 設置文本內容* 事件:onclick點擊事件onload加載事件onfocus獲取焦點事件onblur失去焦點事件* 全選/全不選/反選的練習* 指定默認值:checked只要出現在,對號就勾上了。* 鼠標移動的事件onmousemoveonmouseoutonmouseover* 鼠標點擊事件(*****)onclick單擊ondblclick雙擊* 加載和卸載* onload(*****)加載* onunload卸載* 獲取焦點和失去焦點(*****)* onfocus獲取焦點* onblur失去焦點* 鍵盤* onkeyup按下抬起* 改變事件(*****)* onchange* 控制表單的提交(*****)onsubmit