现在小程序使用新的API createSelectorQuery能获取元素的 rect 值了,但是我发现使用类似如下代码去获取富文本组件rich-text的rect值时,获取的宽度是富文本组件占位的宽度,而不是真实渲染内容的宽度。
var query = wx.createSelectorQuery() query.select( '#rich_text_id' ).boundingClientRect( function (rect){ console.log( 'rect = ' , rect) }).exec() |
请问有办法拿到rich-text组件的富文本内容渲染完成后里面渲染的内容的真实宽度吗?现在的需求是想在渲染完成后对富文本组件的内容进行css3 scale缩放使其能在手机屏幕上自适应展示,因为要展示的内容是用户写的邮件,所以我们内容没法获知和控制宽度。
我猜想rich-text也是占位后在上面画一个webview来实现的,在webview的domcontentload和onload的时候回调一个页面的宽高应该是可以实现的吧?
感谢反馈。rich-text节点本身的尺寸和位置是可以获取的,但不可以获取rich-text内部的节点尺寸。你可以将rich-text视为一个完整的节点,其内部细节是被我们屏蔽了的。