位置: IT常识 - 正文

Uncaught TypeError TypeError: Cannot set properties of null (setting ‘onclick‘)的解决办法

编辑:rootadmin
Uncaught TypeError TypeError: Cannot set properties of null (setting ‘onclick‘)的解决办法

推荐整理分享Uncaught TypeError TypeError: Cannot set properties of null (setting ‘onclick‘)的解决办法,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

我下面用代码示例一下。

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>javascript之鼠标事件之按钮控制改变div盒子的背景颜色</title><style>div{width: 200px;height: 200px;border: 1px red solid;background-color: red;}</style><script>var b=document.getElementById("an");b.onclick=function(){b.style.background="#ffefa1";};</script></head><body><div id="an">可以试一下</div></body></html>报错原因

这个代码你读一下,好像可以实现我们想要的效果,实现点击相关的div盒子实现其背景颜色变颜色的效果,但是一运行下来,在调试控制台里就会出现Uncaught TypeError TypeError: Cannot set properties of null (setting 'onclick')这样的报错------未捕获的类型错误: 无法设置属性

意思就是,无法获取到dom节点,从而导致无法对dom节点进行相关的操作,即无法设置相关dom节点的属性。

那又为什么不能获取dom节点呢?我不是写了 这个获取相关标签dom节点的js代码吗?

var b=document.getElementById("an");

这就跟我们怎么在 HTML 中引入 JavaScript有关了,

那么我们怎么在 HTML 中引入 JavaScript 呢?🤔

Uncaught TypeError TypeError: Cannot set properties of null (setting ‘onclick‘)的解决办法

引入方式与 CSS 相似,有以下三种方式:

在 HTML 标签中直接引入,针对一些特别简短的 JavaScript 代码。

使用 script 标签可以将 JavaScript 代码嵌入到 HTML 文档的 head 和 body 里。

使用外部 JavaScript 文件,将 JavaScript 脚本代码写入一个后缀为 .js 的文件中,通过给 script 标签设置 src 属性的方式,引入这个文件。

我们这个例子的代码是在head标签里面引入 JavaScript 代码,html中的代码是编译一行就执行一行,我们已经在前面把 JavaScript这个代码已经使用完了,到后面执行html代码后,就没有这个javascipt代码了,所以就没有实现那个我们想要的javascipt代码的效果,。

解决办法:

思路一,既然是因为body标签后面没有javascipt代码,才导致的执行相关的操作,那就把相应的javascipt代码放在body标签后面就行了,例如:

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>javascript之鼠标事件之按钮控制改变div盒子的背景颜色</title><style>div {width: 200px;height: 200px;border: 1px red solid;background-color: red;}</style></head><body><div id="an">可以试一下</div></body><script>var b = document.getElementById("an");b.onclick = function () {b.style.background = "#ffefa1";};</script></html>

思路二,我们可以使用window.onload() 这个方法,

window.onload() 方法用于在网页加载完毕后立刻执行的操作,即当 HTML 文档加载完毕后,立刻执行某个方法。

window.onload() 通常用于 <body> 元素,在页面完全载入后(包括图片、css文件等等)执行脚本代码。

使用window.onload()这个方法,就不用考虑javascript代码的位置了,因为使用window.onload(),只要网页加载完,就会触发相应的效果,例如,

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>javascript之鼠标事件之按钮控制改变div盒子的背景颜色</title><style>div{width: 200px;height: 200px;border: 1px red solid;background-color: red;}</style><script>window.onload=function(){var b=document.getElementById("an");b.onclick=function(){b.style.background="#ffefa1";};};</script></head><body><div id="an">可以试一下</div><button >点击</button></body></html>
本文链接地址:https://www.jiuchutong.com/zhishi/288899.html 转载请保留说明!

上一篇:若依框架搭建和使用(若依框架和jeesite)

下一篇:完美解决 Error: Cannot find module ‘@vue/cli-plugin-eslint‘ 报错(完美解决战网已休眠正在唤醒它)

  • 个人应纳税所得额20万交多少税
  • 小规模免征增值税额度2023
  • 什么情况用已交税金
  • 企业所得税不得扣除的税金
  • 公司去社保局开什么发票
  • 企业所得税季度预缴可以弥补以前年度亏损吗
  • 通信协会费入什么科目
  • 工会支出发票抬头是企业名称可以吗
  • 外商投资企业的组织形式,组织机构
  • 非税收入如何审查
  • 发票领用簿怎么领发票
  • 资产负债表金额越来越大代表什么
  • 复式记账法和会计分录
  • 存货盘亏怎么做账务处理
  • 税控盘年费去哪里交
  • 2021虚开发票案例
  • 增值税专用发票和普通发票的区别
  • 管理费用纳税调增账务处理
  • 差额征税怎么交税
  • 红冲发票后 库存怎么处理
  • 固定资产投资增值税进项税额抵扣规定
  • 分期付款购买商品房后续没钱还怎么办
  • 外汇汇兑损益怎么做账
  • 企业银行承兑汇票
  • 城镇地域
  • 个人帮公司买东西怎么报销
  • 简易计税发票如何抵扣
  • u盘中病毒了怎么格式化
  • win11怎么下载手机应用
  • 网页游戏无法打开
  • PHP中empty和isset对于参数结构的判断及empty()和isset()的区别
  • realpopup.exe - realpopup是什么进程
  • php教程 ftp 函数
  • 企业所得税季度申报数据怎么来
  • 购买股票的佣金计入
  • 固定资产折旧提完后只剩净残值
  • 固定资产是指什么
  • javascript编写程序
  • 业务宣传费列支合理性
  • vue的ref怎么用
  • 下载下来是php
  • sar参数设置4个数
  • 预付卡销售和充值计入什么费用
  • 公司以前没有内账
  • 固定资产清理怎么报税呢
  • go语言ui
  • mongodb skip limit
  • 企业法人个人贷款哪里好贷
  • 溢价收购公司会计处理
  • 进项大于销项的会计分录怎么做?
  • 现金比率升高
  • 没有合同的收入能入账吗
  • 银行利息收入怎么计算
  • 会计科目漏记怎么补记
  • 存货有哪几个科目
  • 党委经费是国家政府出吗?
  • 免抵退怎么理解
  • 借款和工程款可以分开吗
  • macbook怎么开hdr
  • 安装metpy
  • xp系统安装条件
  • 卸载软件后整个盘都清空了
  • starting windows
  • xpspeak导入数据总是error reading
  • Windows XP Professional VLK SP2 简体中文版
  • 微软反盗xp黑屏怎么办
  • win1021年更新
  • javascriptj
  • JavaScript中的变量名不区分大小写
  • android 自定义dialog
  • js组件是什么
  • 使用scp获取远程linux服务器上的文件 linux远程拷贝文件
  • unity动画教程
  • win10下python
  • android support包
  • javascript怎么编写
  • 欧美 房产税
  • 昆山国税局上班时间
  • 调查问卷的背景资料怎么写
  • 淮安市地税局电话号码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设