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 相关文章推荐
精选的10款用于构建良好易用性网站的jQuery插件
Jan 23 Javascript
Jquery多选框互相内容交换的实例代码
Jul 04 Javascript
jQuery中width()方法用法实例
Dec 24 Javascript
浅谈JavaScript中的Math.atan()方法的使用
Jun 14 Javascript
微信小程序教程之本地图片上传(leancloud)实例详解
Nov 16 Javascript
微信小程序开发教程-手势解锁实例
Jan 06 Javascript
整理关于Bootstrap过渡动画的慕课笔记
Mar 29 Javascript
vue 里面使用axios 和封装的示例代码
Sep 01 Javascript
利用npm 安装删除模块的方法
May 15 Javascript
如何封装了一个vue移动端下拉加载下一页数据的组件
Jan 06 Javascript
小程序分页实践之编写可复用分页组件
Jul 18 Javascript
JS猜数字游戏实例讲解
Jun 30 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脚本的10个技巧(4)
2006/10/09 PHP
AJAX for PHP简单表数据查询实例
2007/01/02 PHP
php网站地图生成类示例
2014/01/13 PHP
php+js实现裁剪任意形状图片
2018/10/31 PHP
jquery 学习之二 属性相关
2010/11/23 Javascript
jQuery实现表头固定效果的实例代码
2013/05/24 Javascript
基于JQuery的列表拖动排序实现代码
2013/10/01 Javascript
js 设置缓存及获取设置的缓存
2014/05/08 Javascript
深入分析原生JavaScript事件
2014/12/29 Javascript
jQuery异步上传文件插件ajaxFileUpload详细介绍
2015/05/19 Javascript
JS只能输入正整数的简单实例
2016/10/07 Javascript
前端实现文件的断点续传(前端文件提交+后端PHP文件接收)
2016/11/04 Javascript
nodejs搭建本地服务器并访问文件的方法
2017/03/03 NodeJs
jQuery自定义多选下拉框效果
2017/06/19 jQuery
Angular CLI 使用教程指南参考小结
2019/04/10 Javascript
vue-cli基础配置及webpack配置修改的完整步骤
2019/10/20 Javascript
通过实例解析jQ Ajax操作相关原理
2020/09/23 Javascript
JavaScript实现网页跨年倒计时
2020/12/02 Javascript
python安装pywin32clipboard的操作方法
2019/01/24 Python
python整小时 整天时间戳获取算法示例
2019/02/20 Python
利用python计算windows全盘文件md5值的脚本
2019/07/27 Python
python内置模块collections知识点总结
2019/12/19 Python
Anaconda3中的Jupyter notebook添加目录插件的实现
2020/05/18 Python
pygame用blit()实现动画效果的示例代码
2020/05/28 Python
python日志通过不同的等级打印不同的颜色(示例代码)
2021/01/13 Python
Jmeter调用Python脚本实现参数互相传递的实现
2021/01/22 Python
土耳其新趋势女装购物网站:Addax
2020/01/07 全球购物
Overload和Override的区别
2012/09/02 面试题
最新党员的自我评价分享
2013/11/04 职场文书
廉政教育心得体会
2014/01/01 职场文书
2014年会演讲稿范文
2014/01/06 职场文书
企业承诺书怎么写
2014/05/24 职场文书
幼儿园保育员责任书
2014/07/22 职场文书
2016廉洁教育心得体会
2016/01/20 职场文书
为什么代码规范要求SQL语句不要过多的join
2021/06/23 MySQL
Java 多态分析
2022/04/26 Java/Android