时间:2021-05-26
mounted(){ setTimeout(()=>{ this.contentToggle(); },1000) },methods:{ contentToggle(){ console.log(this.$refs.bodyFont.offsetHeight); } }
vue想要获取dom元素的高,一般情况下我们都可以想到写在mounted函数里,即dom加载完再获取,但是结果并不如我们所想,又想到用一个
this.$nextTick(()=>{ //函数})来获取,发现根本没用啊/。。
所以好的办法就是用一个setTimeout定时器,时间可以设为0,但是有时候生效,有时候不生效,还是加一个小的时间值比较保险,这样就可以保证获取到的一定是dom加载后的了,该原理适用于vue中很多传值的问题,刚开始获取不到传过来的值,用一个setTimeout就可。
ps:VUE获取DOM元素内容
通过ref来获取dom元素
在vue官网上对ref的解释
ref 被用来给元素或子组件注册引用信息。引用信息将会注册在父组件的 $refs 对象上。如果在普通的 DOM 元素上使用,引用指向的就是 DOM 元素; 如果用在子组件上,引用就指向组件实例
当 v-for 用于元素或组件的时候,引用信息将是包含 DOM 节点或组件实例的数组
比如我现在要实现的效果是点击用v-for生成的li ,获取到该元素的值
首先要获取当前点击的li元素,我们要做的是
1.给dom添加点击事件和ref属性
2.然后在点击事件方法中使用ref
setPageMenu(index) {//这个是获取当前menuItem值,用index来区分当前元素是v-for 产生的数组中的第几个数 let getMenuText = this.$refs.menuItem[index].innerText;}总结
以上所述是小编给大家介绍的vue获取dom元素注意事项,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
一、is的使用参考Vue2.0教程,有讲到is的使用:解析DOM模板时的注意事项有些HTML元素,诸如、、和,对于哪些元素可以出现在其内部是有严格限制的。而有些
网站建设在选择域名时要注意事项是什么呢?网站域名很重要,是网站建设中的主要元素,今天网站建站与大家分享网站建设在选择域名时要注意事项,希望对您有所帮助。
淘宝介入买家如何举证,有哪些注意事项是卖家和买家同时关注的焦点,但是很多时候他们都是不知道这些信息的获取渠道,那么淘宝介入买家如何举证,有哪些注意事项,今天
淘宝价格区间怎么取消?有哪些注意事项是2017年卖家朋友关注的重点,但是他们却不知道从哪可以获取淘宝价格区间怎么取消?有哪些注意事项的资讯,现在就让小编给大
-------------电脑端-------------注意事项:180天只能修改一次。-------------手机端-------------注意事项:1