首页IT科技uniapp获取dom元素修改颜色(uniapp中获取dom元素的方法,更改dom元素颜色(遇坑记录))

uniapp获取dom元素修改颜色(uniapp中获取dom元素的方法,更改dom元素颜色(遇坑记录))

时间2025-09-27 04:05:24分类IT科技浏览6706
导读:前言 最近写uniapp,遇到一个需要获取到页面中dom元素,我第一反应是使用this.$ refs进行获取,于是我开心的使用this.$refs写了很多代码,使用h5调试的过程中没有发现任何问题,但后来真机调试的时候发现在app端无效,于是我查看文档发现了:...

前言

最近写uniapp                ,遇到一个需要获取到页面中dom元素                        ,我第一反应是使用this.$ refs进行获取        ,于是我开心的使用this.$refs写了很多代码            ,使用h5调试的过程中没有发现任何问题                        ,但后来真机调试的时候发现在app端无效            ,于是我查看文档发现了:

非H5端只能用于获取自定义组件        ,不能用于获取内置组件实例(如:view                、text)

使用uni.createSelectorQuery()

SelectorQuery是查询节点信息的对象

可以在这个实例上使用 select 等方法选择节点                        ,并使用 boundingClientRect 等方法选择需要查询的信息                。

比如使用selectorQuery.in(component) const query = uni.createSelectorQuery().in(this); query.select(#id).boundingClientRect(data => { console.log("得到布局位置信息" + JSON.stringify(data)); console.log("节点离页面顶部的距离为" + data.top); }).exec();

这样就能获取该dom结点的信息                ,比如:

除此之外还可以查看关于SelectorQuery的更多用法    ,详情见官网文档 SelectorQuery

直接动态绑定style来修改样式

例如:

然后在boxStyleDefault1写对应的样式                        ,并且可以在js逻辑中对样式进行修改                    ,这种方法在h5,app和小程序中均适用                    ,不用考虑兼容性的问题                        。

看来在开发中多查阅官方文档能够少走很多弯路                        ,特别是uniapp在各端兼容性上的问题    ,要看清楚适用哪些端                ,避免浪费过多的时间再爬坑找问题解决问题上        。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
toolwith photo下载(/tools/lime/trunk/lib/lime.php symfony Trac) 挂机赚钱游戏手游排行榜(有什么挂机赚钱游戏-玩手游赚钱,新手搬砖,什么都不懂,该如何开启自己的搬砖生涯)