WebAPI就是 DOM API + BOM API
W3C标准给我们提供了一系列的函数,让我们可以操作:网页内容、网页结构、网页样式、
一个网页的页面结构如:
<html>
<head>
<title> 标题 </title>
</head>
<body>
<a href=" ">链接</a>
<h1>我的标题</h1>
</body>
</html>
几个重要概念:
类似于CSS选择器的功能
var elem = document . querySelector ( selectors );
<div class="box">abc</div> <div id="id">def</div> <script> var elems = document.querySelectorAll('div'); console.log(elems); </script>
1. 事件源 : 哪个元素触发的
2. 事件类型 : 是点击 , 选中 , 还是修改 ?
3. 事件处理程序 : 进一步如何处理, 往往是一个回调函数 .
innerText
使用示例:
<div> <span>hello world</span> <span>hello world</span> </div> <script> var div = document.querySelector('div'); // 读取 div 内部内容 console.log(div.innerText); // 修改 div 内部内容, 界面上就会同步修改 div.innerText = 'hello js <span>hello js</span>'; </script>
innerHTML
Element.innerHTML 属性设置或获取 HTML 语法表示的元素的后代 使用示例:
<div> <span>hello world</span> <span>hello world</span> </div> <script> var div = document.querySelector('div'); // 读取页面内容 console.log(div.innerHTML); // 修改页面内容 div.innerHTML = '<span>hello js</span>' </script>
//修改属性 <img src="rose.jpg" alt="这是一朵花" title="玫瑰花"> <script> var img = document.querySelector('img'); img.onclick = function () { if (img.src.lastIndexOf('rose.jpg') !== -1) { img.src = './rose2.png'; } else { img.src = './rose.jpg'; } } </script> //获取属性 <img src="rose.jpg" alt="这是一朵花" title="玫瑰花"> <script> var img = document.querySelector('img'); // console.dir(img); console.log(img.src); console.log(img.title); console.log(img.alt); </script>
表单 ( 主要是指 input 标签 ) 的以下属性都可以通过 DOM 来修改
代码示例:
<input type="button" value="播放"> <script> var btn = document.querySelector('input'); btn.onclick = function () { if (btn.value === '播放') { btn.value = '暂停'; } else { btn.value = '播放'; } } </script>