dom:讀取訪問節點物件屬性
批量刪除父元素下所有子節點 elem.innerhtml="";
批量替換父元素下所有子節點 elem.innerhtml="所有子元素標籤組成的html字串"
一切從屬性獲取的值和設定到屬性上的值必須都是字串所以,都要先型別轉換,再計算!
獲取元素的屬性值
只找乙個屬性值時:var strvalue=elem.getattribute("屬性名");
遍歷乙個元素所有屬性時:
elem.attributes集合:包含了當前元素所有屬性的節點物件
elem.attributes[i/"屬性名"]-->返回乙個屬性節點物件
elem.attributes[i/"屬性名"].value-->屬性值
修改元素的屬性值:2種:
1. elem.setattribute("屬性名","屬性值");
何時使用:只設定乙個屬性值時
2. elem.setattributenode(屬性節點物件)
移除元素的屬性:2種:
1. elem.removeattribute("屬性名")
2. elem.removeattributenode(屬性節點)
判斷是否包含指定屬性:1種:
1. elem.hasattribute("屬性名")-->有,true;沒有,false
h5中自定義屬性:例a.setattribute("age",18);
h5規定:凡是自定義屬性都要加data-字首 獲取自定義屬性值:a.dataset.屬性名
設定自定義屬性值:a.dataset.屬性名=值
修改樣式
1. 僅獲得或修改內聯樣式:
每個元素的style屬性-->style物件
style物件中包含了所有css樣式屬性,預設值都是""
elem.style.屬性名="值";
問題:無法獲得樣式表中層疊或繼承來的屬性
只能訪問elem的內聯樣式(style屬性中定義的樣式)
2. 獲得樣式表中層疊或繼承來的屬性:
dom標準:var style物件=getcomputedstyle(elem);
style物件.屬性名
ie8: var style物件=elem.currentstyle;
style物件.屬性名
問題: 僅能獲得樣式,無法修改樣式
解決:要修改:
改內聯:只能用elem.style.屬性名="值"
3. 改樣式表中的樣式:3步:
1. 獲得要修改的樣式表物件:
var sheet=document.stylesheets[i];
2. 獲得要修改的cssrule:
cssrule:樣式表中每個大括號包裹的內容
var cssrule=sheet.cssrules[i]
3. 獲得或修改cssrule中的屬性
cssrule.style.屬性名=值
問題:牽一髮而動全身
解決:都是用直接修改內聯樣式的屬性,來覆蓋樣式表中的屬性
11 18學習日誌
11.18學習日誌 css1 外部樣式表 2 內部樣式表3 內聯樣式表 綠葉學習網 1 元素選擇器 div 2 id選擇器 id選擇器 box 3 class選擇器 綠葉學習網 綠葉學習網 lv 4 子元素選擇器 father1 div father2 p1 5 相鄰選擇器 相鄰選擇器,就是選中該元...
考試總結 test 11 18
考試策略與過程 看 t1,發現一次操作後的數在 1000 以內,可以暴力預處理 1000 以內的數操作到 1 的次數,則將問題轉化成了有多少個數一次操作後還需 k 1 次操作到 1 可以列舉一次操作後的數,類似數字dp一樣從高到低計算,但是沒有判斷 n choose m 中 m 為負數的情況,100...
1118 有序陣列的元素新增
題目描述 乙個非遞減有序的整型陣列有n個元素,給定乙個整數num,將num插入該序列的適當位置,使序列仍保持非遞減有序。要求定義乙個函式insert 將整數num插入在陣列a的適當位置上,函式原型如下 void insert int a,int n,int num 另外函式仍然呼叫以前定義過的函式p...