鍍金池/ 問答/C  網(wǎng)絡(luò)安全/ 關(guān)于重繪,重排的問題,如何拿到渲染完成的事件?

關(guān)于重繪,重排的問題,如何拿到渲染完成的事件?

有很長很長的一段html字符串,然后我把它渲染到div中,然后去取這個div的寬度,總是在沒渲染完,就去獲取寬度了,這樣得到的寬度不準確,怎么辦?
有什么解決思路?

回答
編輯回答
爛人

使用setTimeout異步異步獲取一下?或者如果使用的是vue的話,可以使用Vue.nextTick

2017年4月26日 01:41
編輯回答
擱淺

var div = document.getElementById('example');
var html = [];
for (var i = 0; i < 100000; i++) {
    html.push('<span>' + i + '</span>');
}
$('#example').html(html.join(' '));
setTimeout(function() {
    var width = $('#example').text().length;
    console.log(width);
}, 0);
2017年12月4日 16:20