位置: 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‘ 报错(完美解决战网已休眠正在唤醒它)

  • 营改增后房地产会计账务处理
  • 海运报文是什么意思
  • 政府土地收储是什么意思
  • 下列支出不可以从其应纳税所得额中扣除的是
  • 套期保值账务处理出售被套期项目
  • 承包经营承包费增值税
  • 银行卡收到养老金是什么意思
  • 销售回扣分录
  • 外购商品赠送给顾客
  • 房地产开发成本费用明细表
  • 哪几种跨省邮寄发票是违法的?
  • 简易计税可以抵扣销项税吗
  • 个税和实发不一样
  • 权益净利率计算公式推导
  • 购进的货物用于赠送
  • 金税三期上线后的税收征管问题
  • 研发支出的二级科目是什么
  • 进项抵扣怎么做分录
  • 电脑开wifi给手机用好吗
  • 苹果se和华为p9哪个好
  • 债权人和债务人是什么意思
  • nvsvc.exe - nvsvc是什么进程 有什么用
  • PHP:mb_check_encoding()的用法_mbstring函数
  • mmtray2k.exe有什么作用 是什么进程 mmtray2k进程查询
  • 如何安装iis网站服务器
  • yolov5训练参数说明
  • 会计账簿的错账怎么办
  • 无形资产本月增加本月摊销如何设置函数
  • 行政事业单位的主要经济业务活动有哪些
  • 高新技术企业取消资格怎么处罚
  • 出口的发票怎么开视频
  • 长期负债和应付账款
  • 内部结算属于什么科目类别
  • 发票校验码二维码看不到了怎么查
  • 医院职工医疗保险报销比例
  • 土地作为无形资产摊销年限
  • 发票金额大于付款金额怎么做分录
  • 汇算清缴账务
  • mysql查询的结果缓存里怎么清除
  • 总分公司企业所得税如何申报缴纳
  • 捐款怎么组织
  • 非货币性资产交换的记忆口诀
  • 劳务支出和应付职工薪酬
  • 钢材贸易公司如何经营
  • 合伙企业要不要每月做账?报税是不是与一般的有限公司一样,每月申报纳税吗?
  • 无法连接配置的sql服务器
  • asp 数据库
  • 应交税费账户的用途和结构是怎样的
  • 收到银行承兑汇票的账务处理
  • 进项税额转出和红字冲销区别
  • 小规模纳税人免税政策2022
  • 固定资产可以一次性折旧吗
  • 贸易公司如何结转销售成本
  • 房屋租赁费属于变动成本吗
  • 建筑租赁公司账务处理
  • 砂石资源税怎么算
  • 固定资产更新改造被替换的旧部件残值收入
  • 银行进账单是什么样子的
  • 房地产企业如何结转成本
  • 税审报告一定要税所主任签吗
  • 如何下载苹果图书
  • centos 命令大全
  • xp系统怎么装系统教程
  • 苹果Mac系统怎么装
  • win8微软拼音输入法打不出中文
  • red hat linux怎么用
  • vsftpd.log
  • win10文件资源
  • win10笔记本键盘失灵按什么键恢复
  • Extjs4 类的定义和扩展实例
  • python多核并行处理
  • js 图片压缩库
  • android 属性动画改变view大小
  • shell命令是干嘛的
  • package.json里面的配置
  • android错误报告
  • 广州契税补贴2022政策
  • 甘肃省税务申报系统
  • 陕西国家电子税务局2.0
  • 国家税务网上办税服务厅官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设