[TOC]
# 屬性操作
## 非表單元素的屬性
href、title、id、src、className
~~~
var link = document.getElementById('link');
console.log(link.href);
console.log(link.title);
var pic = document.getElementById('pic');
console.log(pic.src);
~~~
* innerHTML和innerText
~~~
// innerHTML 獲取內容的時候,如果內容中有標簽,會把標簽頁獲取到
// 原封不動把內容獲取到
console.log(box.innerHTML);
// innerText 獲取內容的時候,如果內容中有標簽,會把標簽過濾掉
// innerText 會把前后的換行和空白都去掉
console.log(box.innerText);
~~~
\- HTML轉義符
~~~
" "
' '
& &
< < // less than 小于
> > // greater than 大于
空格
? ©
~~~
* innerText的兼容性處理
~~~
var box = document.getElementById('box');
console.log(getInnerText(box));
// 處理innerText的兼容性問題
function getInnerText(element) {
// 判斷當前瀏覽器 是否支持元素的innerText屬性,支持innerText 使用element.innerText獲取內容
// 如果不支持innerText屬性,使用element.textContent獲取內容
if (typeof element.innerText === 'string') {
return element.innerText;
} else {
return element.textContent;
}
}
~~~
## 表單元素屬性
* value 用于大部分表單元素的內容獲取(option除外)
* type 可以獲取input標簽的類型(輸入框或復選框等)
* disabled 禁用屬性
* checked 復選框選中屬性
* selected 下拉菜單選中屬性
~~~
<body>
<input type="button" value="按鈕" id="btn" />
<input type="button" value="設置文本框的值" id="btn1" />
<br>
<input type="text" id="txt" value="123" />
</body>
<script>
var btn = document.getElementById('btn');
btn.onclick = function () {
var txt = document.getElementById('txt');
console.log(txt.value);
console.log(txt.type);
console.log(txt.disabled);
txt.disabled = true;
}
var btn1 = document.getElementById("btn1");
btn1.onclick = function () {
var txt = document.getElementById('txt');
txt.value = 'hello world';
}
</script>
~~~
# 自定義屬性操作
* getAttribute() 獲取標簽行內屬性
* setAttribute() 設置標簽行內屬性
* removeAttribute() 移除標簽行內屬性
* 與element.屬性的區別: 上述三個方法用于獲取任意的行內屬性
~~~
<body>
<div id="box" age="18" personId="1">張三</div>
</body>
<script>
var box = document.getElementById('box');
// 獲取自定義屬性的值 getAttribute()
// console.log(box.getAttribute('age'));
// console.log(box.getAttribute('personId'));
// 設置自定義屬性
// box.setAttribute('sex', 'male');
// box.setAttribute('class', 'test');
// 移除屬性
box.removeAttribute('age');
box.removeAttribute('id');
</script>
~~~
# 樣式操作
* 使用style方式設置的樣式顯示在標簽行內
~~~
var box = document.getElementById('box');
box.style.width = '100px';
box.style.height = '100px';
box.style.backgroundColor = 'red';
~~~
* 注意
通過樣式屬性設置寬高、位置的屬性類型是字符串,需要加上px
# 類名操作
* 修改標簽的className屬性相當于直接修改標簽的類名
~~~
var box = document.getElementById('box');
box.className = 'show';
~~~
- HTML
- 標簽
- 超鏈接
- 列表
- 表格和表單
- h5新增標簽
- 快捷方式
- 標簽包含
- CSS
- 選擇器
- 行內,塊元素,鏈接
- css三大特性
- 盒子模型
- 定位
- css可見性
- emment書寫
- 文本元素
- 外觀屬性
- 背景
- 浮動
- ps
- 用戶界面樣式
- 顯示和隱藏
- 過渡
- 2D,3D變形
- 動畫animation
- 伸縮布局(CSS3)
- BFC
- 優雅降級和漸進增強
- 3D旋轉
- 雙飛翼和圣杯
- JS基礎
- 輸出消息的幾種方式
- 數據類型
- Date對象
- Math對象
- Array對象
- 字符串常用方法
- 數據類型轉換
- 等號運算
- 代碼調試
- 數組
- 函數
- WebAPI
- webapi簡介
- 獲取頁面元素
- 事件
- 屬性操作
- 創建元素
- 節點操作
- 事件詳解
- BOM
- 位置相關屬性
- 拖拽彈窗
- 彈出層加遮罩
- ES6
- let和const
- 解構表達式變化
- 函數優化
- map和reduce
- nrm
- npm
- npm基礎
- package.json
- 淘寶鏡像
- webpack
- 介紹
- 多入口文件(Multiple entry files)
- Webpack CSS loader加載器
- webpack Image loader 加載圖片
- uglify-js壓縮打包JS
- webpack構建本地服務器
- vue內部指令
- v-if,v-show,v-for
- v-text,v-html
- v-on
- v-model
- v-bind
- v-pre,v-cloak,v-once
- vue全局api
- Vue.directive 自定義指令
- vue.extend構造器的延伸
- vue.set全局操作
- Vue的生命周期(鉤子函數)
- Template 制作模版
- Component 初識組件
- Component 組件props 屬性設置
- Component 父子組件關系
- Component 標簽
- vue選項
- propsData Option全局擴展數據傳遞
- computed Option 計算選項
- Methods Option 方法選項
- watch選項監控數據
- Mixins 混入選項操作
- Extends Option 擴展選項
- delimiters 選項
- vue實例和內置組件
- 實例屬性
- 實例方法
- 實例事件
- 內置組件 -slot
- vue-cli
- vue-cli介紹
- 項目目錄結構
- vue-cli模板
- vue-router
- 簡介
- 配置子路由
- 參數傳遞
- 單頁面多路由區域操作
- url傳遞參數
- vscode