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中interval与setTimeOut的区别示例介绍
Mar 14 Javascript
jQuery实现固定在网页顶部的菜单效果代码
Sep 02 Javascript
JS实现alert中显示换行的方法
Dec 17 Javascript
基于jquery实现的仿优酷图片轮播特效代码
Jan 13 Javascript
大型JavaScript应用程序架构设计模式
Jun 29 Javascript
AngularJS ui-router (嵌套路由)实例
Mar 10 Javascript
js学使用setTimeout实现轮循动画
Jul 17 Javascript
微信小程序 本地图片按照屏幕尺寸处理
Aug 04 Javascript
vue环境搭建简单教程
Nov 07 Javascript
Vue实现购物车场景下的应用
Nov 27 Javascript
微信小程序实现给嵌套template模板传递数据的方式总结
Dec 18 Javascript
jQuery 点击获取验证码按钮及倒计时功能
Sep 20 jQuery
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解析json数据实例
2014/08/19 PHP
CentOS下PHP安装Oracle扩展
2015/02/15 PHP
PHP图像处理类库及演示分享
2015/05/17 PHP
PHP关联数组实现根据元素值删除元素的方法
2015/06/26 PHP
javascript mouseover、mouseout停止事件冒泡的解决方案
2009/04/07 Javascript
使用jquery自定义鼠标样式满足个性需求
2013/11/05 Javascript
Jquery $.getJSON 在IE下的缓存问题解决方法
2014/10/10 Javascript
JavaScript仿支付宝密码输入框
2015/12/29 Javascript
jquery分隔Url的param方法(推荐)
2016/05/25 Javascript
jQuery.form.js插件不能解决连接超时(timeout)的原因分析及解决方法
2016/10/14 Javascript
Nodejs中使用phantom将html转为pdf或图片格式的方法
2017/09/18 NodeJs
Nginx 配置多站点vhost 的方法
2018/01/07 Javascript
JavaScript代码实现txt文件的上传预览功能
2018/03/27 Javascript
vue实现选项卡及选项卡切换效果
2018/04/24 Javascript
LayUi使用switch开关,动态的去控制它是否被启用的方法
2019/09/21 Javascript
jQuery实现鼠标滑动切换图片
2020/05/27 jQuery
原生JavaScript实现弹幕组件的示例代码
2020/10/12 Javascript
vue中activated的用法
2021/01/03 Vue.js
python内存管理分析
2015/04/08 Python
Python Flask-web表单使用详解
2017/11/18 Python
Python爬虫获取图片并下载保存至本地的实例
2018/06/01 Python
在python 中实现运行多条shell命令
2019/01/07 Python
Django错误:TypeError at / 'bool' object is not callable解决
2019/08/16 Python
Django 请求Request的具体使用方法
2019/11/11 Python
关于Python3 lambda函数的深入浅出
2019/11/27 Python
Django正则URL匹配实现流程解析
2020/11/13 Python
英国最大的电脑零售连锁店集团:PC World
2016/10/10 全球购物
Charlotte Tilbury澳大利亚官网:英国美妆品牌
2018/10/05 全球购物
请写出 BOOL flag 与"零值"比较的 if 语句
2016/02/29 面试题
物理系毕业生自荐书范文
2014/02/22 职场文书
《木笛》教学反思
2014/03/01 职场文书
幼儿园师德演讲稿
2014/05/06 职场文书
科长竞聘演讲稿
2014/05/16 职场文书
停车位租赁协议书
2014/09/24 职场文书
企业安全生产规章制度
2015/08/06 职场文书
校园安全主题班会
2015/08/12 职场文书