HTML 中存在着真实的 JavaScript 代码
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8"> <title>使用 JavaScript 的示例</title> <script> function createParagraph() { const para = document.createElement('p'); para.textContent = '你点击了这个按钮!'; document.body.appendChild(para); } </script> </head> <body> <button onclick="createParagraph()">点我呀</button> </body> </html>
在 <button>
元素中包含了一个内联的 onclick 处理器,使得函数在按钮被按下时运行。效率低下。对于每个需要应用 JavaScript 的按钮,你都得手动添加 onclick="createParagraph()"
属性。
可以使用纯 JavaScript 结构来通过一个指令选取所有按钮
document.addEventListener("DOMContentLoaded", function() { . . . });
这是一个事件监听器,它监听浏览器的 "DOMContentLoaded" 事件,即 HTML 文档体加载、解释完毕事件。事件触发时将调用 " . . ." 处的代码,从而避免了错误发生
DOMContentLoaded这个事件可以替代window.onload事件,创建一个匿名函数。querySelectorAll获取标签button的句柄,然后绑定createParagraph()函数。
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8"> <title>使用 JavaScript 的示例</title> <script> document.addEventListener("DOMContentLoaded", function() { function createParagraph() { const para = document.createElement('p'); para.textContent = '你点击了这个按钮!'; document.body.appendChild(para); } const buttons = document.querySelectorAll('button'); for(let i = 0; i < buttons.length ; i++) { buttons[i].addEventListener('click', createParagraph); } }); </script> </head> <body> <button>点我呀</button> </body> </html>