JavaScript文档加载模式以及元素获取


Posted in Javascript onJuly 28, 2020

一、文档加载模式

1.事件三要素:事件源(触发时间的元素);事件名称(click点击事件);事件处理程序(事件出发后要执行的代码函数形式)存在问题:浏览器加载一个页面的时候,是按照自上而下的顺序加载的,若将script标签写到head内部,在代码执行时候,页面还没有加载,页面中的DOM对象也没有加载。就会导致js中无法获取页面中的DOM对象。解决方法:onload事件,会在整个页面加载完之后才触发,为window绑定一个onload事件,该事件对应的响应函数将会在页面加载完成之后执行,这样可以确保我们的代码执行时所有的DOM对象已经加载完了

<style>
 button{
 width:100px;
 height:100px;
 background-color:green;
 margin:0 auto;
 font-size:30px;
 }
 </style>

</head>
<body>
<div></div>
<button id="button">点击</button>
<script>
 window.onload = function (ev) {
 var btn = document.getElementById("button");
 btn.onclick = function (ev) {
 alert("成功了");
 }
 }
</script>
</body>

运行显示:

JavaScript文档加载模式以及元素获取

点击按钮

 JavaScript文档加载模式以及元素获取

二、文档页面元素获取

根据id、标签名、name、类名、选择器获取元素

<script>
 window.onload = function (ev) {
 var btn = document.getElementById("button");
 btn.onclick = function (ev) {
 alert("成功了");
 }
 }
 window.onload = function (ea) {
 var btn1 = document.getElementById("button")
 console.log(btn1);
 var btn2 = document.getElementsByClassName("button2");
 console.log(btn2[0]);
 var btn3 = document.getElementsByTagName("button");
 console.log(btn3[0]);
 var btn4 = document.getElementsByName("button3");
 console.log(btn4[0]);
 var btn5 = document.querySelector("#button2");
 console.log(btn5);
 var btn6 = document.querySelectorAll("#button1");
 console.log(btn6[0]);
 }
</script>

运行显示:

JavaScript文档加载模式以及元素获取

三、源码:

地址:https://github.com/ruigege66/JavaScript/blob/master/D27_1_Document.html  

博客园:https://www.cnblogs.com/ruigege0000/

CSDN:https://blog.csdn.net/weixin_44630050?t=1

三水点靠木:https://3water.com/article/191885.htm

到此这篇关于JavaScript文档加载模式以及元素获取的文章就介绍到这了,更多相关JavaScript 文档加载 元素获取内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
JavaScript版DateAdd和DateDiff函数代码
Mar 01 Javascript
javascript标签在页面中的位置探讨
Apr 11 Javascript
window.onerror()的用法与实例分析
Jan 27 Javascript
jQuery中each()、find()和filter()等节点操作方法详解(推荐)
May 25 Javascript
jQuery中Nicescroll滚动条插件的用法
Nov 10 Javascript
Javascript使用function创建类的两种方法(推荐)
Nov 19 Javascript
js格式化时间的简单实例
Nov 27 Javascript
AngularJS封装$http.post()实例详解
May 06 Javascript
angular.js指令中的controller、compile与link函数的不同之处
May 10 Javascript
jQuery remove()过滤被删除的元素(推荐)
Jul 18 jQuery
angular+ionic返回上一页并刷新页面
Aug 08 Javascript
js对象实例详解(JavaScript对象深度剖析,深度理解js对象)
Sep 21 Javascript
javascript实现贪吃蛇小游戏
Jul 28 #Javascript
Element DateTimePicker日期时间选择器的使用示例
Jul 27 #Javascript
Js图片点击切换轮播实现代码
Jul 27 #Javascript
在vue中实现echarts随窗体变化
Jul 27 #Javascript
Vue组件跨层级获取组件操作
Jul 27 #Javascript
vue 解决兄弟组件、跨组件深层次的通信操作
Jul 27 #Javascript
vue中组件通信详解(父子组件, 爷孙组件, 兄弟组件)
Jul 27 #Javascript
You might like
PHP中如何定义和使用常量
2013/02/28 PHP
基于jquery的横向滚动条(滑动条)
2011/02/24 Javascript
JavaScript通过RegExp实现客户端验证处理程序
2013/05/07 Javascript
15条JavaScript最佳实践小结
2013/08/09 Javascript
js跨浏览器实现将字符串转化为xml对象的方法
2013/09/25 Javascript
js动态设置div的值下例子
2013/10/29 Javascript
nodejs npm package.json中文文档
2014/09/04 NodeJs
Bootstrap中的Dropdown下拉菜单更改为悬停(hover)触发
2016/08/31 Javascript
js实现键盘自动打字效果
2016/12/23 Javascript
浅谈DOM的操作以及性能优化问题-重绘重排
2017/01/08 Javascript
Vue.js框架路由使用方法实例详解
2017/08/25 Javascript
vue 组件 全局注册和局部注册的实现
2018/02/28 Javascript
解决vue2中使用axios http请求出现的问题
2018/03/05 Javascript
当vue路由变化时,改变导航栏的样式方法
2018/08/22 Javascript
vue-cli 3.0 自定义vue.config.js文件,多页构建的方法
2018/09/19 Javascript
Webpack按需加载打包chunk命名的方法
2019/09/22 Javascript
node创建Vue项目步骤详解
2020/03/06 Javascript
[03:55]2014DOTA2国际邀请赛 Fnatic经理采访赢DK在情理之中
2014/07/10 DOTA
Python编程之列表操作实例详解【创建、使用、更新、删除】
2017/07/22 Python
python使用筛选法计算小于给定数字的所有素数
2018/03/19 Python
Python修改文件往指定行插入内容的实例
2019/01/30 Python
细说CSS3中的选择符
2008/10/17 HTML / CSS
浅谈基于HTML5的在线视频播放方案
2016/02/18 HTML / CSS
泰国健康和美容服务预订网站:GoWabi
2019/06/03 全球购物
澳大利亚香水在线商店:City Perfume
2020/09/02 全球购物
英国著名药妆店:Superdrug
2021/02/13 全球购物
杭州-DOTNET笔试题集
2013/09/25 面试题
幸福家庭事迹材料
2014/02/03 职场文书
关爱残疾人演讲稿
2014/05/24 职场文书
公证委托书标准格式
2014/09/11 职场文书
2014年小学英语教师工作总
2014/12/03 职场文书
优秀员工推荐材料
2014/12/20 职场文书
2015共产党员公开承诺书
2015/01/22 职场文书
暑期实践个人总结
2015/03/06 职场文书
幼儿园教师安全责任书
2015/05/08 职场文书
实习单位鉴定意见
2015/06/04 职场文书