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

  • 荣耀50手电筒快捷键在哪里(荣耀50手电筒快捷键在哪里设置)

    荣耀50手电筒快捷键在哪里(荣耀50手电筒快捷键在哪里设置)

  • 苹果手机电话本怎么导入新手机(苹果手机电话本怎么导入华为手机)

    苹果手机电话本怎么导入新手机(苹果手机电话本怎么导入华为手机)

  • iphone8屏幕是lcd还是oled(iphone8屏幕是什么牌子)

    iphone8屏幕是lcd还是oled(iphone8屏幕是什么牌子)

  • 华为息屏后显示时间怎么设置(华为开启熄屏显示)

    华为息屏后显示时间怎么设置(华为开启熄屏显示)

  • 苹果11怎么连接声卡(苹果11怎么连接苹果手表)

    苹果11怎么连接声卡(苹果11怎么连接苹果手表)

  • 抖音怎么显示在线状态(抖音怎么显示在线状态设置)

    抖音怎么显示在线状态(抖音怎么显示在线状态设置)

  • qq看点怎么关通知(qq看点功能怎么关闭)

    qq看点怎么关通知(qq看点功能怎么关闭)

  • 华为手机怎么隐藏电量(华为手机怎么隐藏文件夹)

    华为手机怎么隐藏电量(华为手机怎么隐藏文件夹)

  • 抖音一定要对公账户吗(抖音必须绑定对公账户吗)

    抖音一定要对公账户吗(抖音必须绑定对公账户吗)

  • 美团钱袋宝怎么关闭(美团钱袋宝怎么打开)

    美团钱袋宝怎么关闭(美团钱袋宝怎么打开)

  • 抖音极速版提现为什么老是退回(抖音极速版提现有风险吗)

    抖音极速版提现为什么老是退回(抖音极速版提现有风险吗)

  • bluetooth网络连接未连接怎么解决(bluetooth connected)

    bluetooth网络连接未连接怎么解决(bluetooth connected)

  • qq被邀请进群需要本人同意怎么设置(qq邀请进群需要本人同意怎么设置)

    qq被邀请进群需要本人同意怎么设置(qq邀请进群需要本人同意怎么设置)

  • iphone8用18w快充多久充满(iphone8p 18w快充)

    iphone8用18w快充多久充满(iphone8p 18w快充)

  • 怎么发起多人视频通话(怎么发起多人视频群聊)

    怎么发起多人视频通话(怎么发起多人视频群聊)

  • itunes软件是什么(itunes干啥的)

    itunes软件是什么(itunes干啥的)

  • 小米黑鲨怎么隐藏应用(小米黑鲨怎么隐藏相册)

    小米黑鲨怎么隐藏应用(小米黑鲨怎么隐藏相册)

  • airpods的触点在哪(airpods 触点)

    airpods的触点在哪(airpods 触点)

  • iphonex怎么给微信加密(iphonex怎么给微信加密码锁)

    iphonex怎么给微信加密(iphonex怎么给微信加密码锁)

  • 苹果耳机如何调节音量(苹果耳机如何调节下一曲)

    苹果耳机如何调节音量(苹果耳机如何调节下一曲)

  • 怎样在电脑上下载哔哩哔哩的视频?(怎样在电脑上下载word文档)

    怎样在电脑上下载哔哩哔哩的视频?(怎样在电脑上下载word文档)

  • 给对方打电话没有声音是怎么回事(给对方打电话没有任何提示音)

    给对方打电话没有声音是怎么回事(给对方打电话没有任何提示音)

  • 安卓隔空投送在哪打开(隔空投送到安卓)

    安卓隔空投送在哪打开(隔空投送到安卓)

  • vivox9备份在哪里找到(vivox9plus手机备份在哪)

    vivox9备份在哪里找到(vivox9plus手机备份在哪)

  • 鸿蒙系统怎么切换音频输出设备? 鸿蒙更换声音输出设备的技巧(鸿蒙系统怎么切换回安卓)

    鸿蒙系统怎么切换音频输出设备? 鸿蒙更换声音输出设备的技巧(鸿蒙系统怎么切换回安卓)

  • Java如何解析html里面的内容并存到数据库(java如何解析json字符串)

    Java如何解析html里面的内容并存到数据库(java如何解析json字符串)

  • 单一窗口出口退税申报
  • 小规模纳税人收到专票后如何处理
  • 小企业固定资产折旧的账务处理
  • 监理费可以由施工方出吗
  • 劳务费代扣代缴后还需要开发票吗
  • 加计扣除所得税怎么算
  • 转账支票支付展览费
  • 无形资产内部研究开发支出的确认和计量
  • 发生应收账款如何入账可避税
  • 出口货物免抵退税额城市维护建设税
  • 企业交的房产税在哪打印税单
  • 增值税认证未认证是什么意思
  • 营改增后房地产公司税种及税率
  • 利息可以开专票
  • 投资收益所得税表怎么填
  • 企事业承包承租经营所得税率是多少
  • 电费冲销是什么意思
  • 小规模收到增值税专用发票咋处理
  • 完税凭证丢失如何补办
  • 先亏后盈法案例分析
  • 短期融资券是
  • 中介公司收取中介费过高违法吗
  • 鸿蒙系统支持第三方相机吗
  • ahc软件进不去
  • 代购机票骗局
  • 最多人用的操作系统
  • 发票开出未认证丢失怎么处理
  • 领取养老金后每年会增加多少
  • vue的自定义指令怎么用
  • 固定资产清理会议记录范文
  • 关于印花税免税的规定
  • 调整以前年度错账会计分录怎么做
  • 公司法人的车租给公司怎么开发票
  • 资信证明好开吗
  • 税务局清卡需要公章吗?
  • 微小企业开票一天可以开多少钱
  • 房地产开发企业成本核算方法
  • 自然人个税申报密码怎么获取
  • 银行存款对账方法
  • 无法连接配置的sql服务器
  • 金税四期何时上线
  • 纳税申报表期末未缴税额什么意思
  • 销售折让怎么写分录
  • 2020年申报期截止时间
  • 研发费用允许加计扣除的标准
  • 预收账款怎么用
  • 期末留抵的税额怎么做分录
  • 权益法下股权投资转让
  • 执行企业会计准则和小企业会计准则的区别
  • 应收票据和应收账款减少说明什么
  • 可以先注销银行信用卡吗
  • 作废发票丢了罚款多少
  • 存储过程 decode
  • win10 性能选项
  • solaris 2020
  • vc_mbcsmfc.exe是什么
  • win8鼠标右键没反应
  • windows常用操作
  • windows远程登录命令
  • win8卸载软件在哪里卸载
  • android环境搭建实训心得
  • android开发环境配置
  • Android之Android apk动态加载机制的研究
  • vs2008安装教程
  • 标题显示不出来
  • python中2和2.0的区别
  • websocket解决跨域
  • linux压缩命令compress
  • vim fold
  • 清理服务器c盘
  • 模拟新浪微博用户注册程序设计
  • linux shell脚本编程100例
  • unity mesh bounds
  • 国家税务电子发票查验入口
  • 佛山国家税务局招聘
  • 天津市车船税收费标准2023
  • 南京市国家税务局溧水分局
  • 专利转让个人所得税率
  • 广西汽车下乡补贴申请攻略?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设