1 回答

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超13個(gè)贊
不要相信 Deferreds 可以確定 DOM 元素何時(shí)被繪制到屏幕上。由于您使用的是let我假設(shè)您可以使用現(xiàn)代 JavaScript,例如onanimationstart. 您可以將其與 CSS 動(dòng)畫一起使用來確定表格實(shí)際繪制的時(shí)間。
@keyframes any-animation {
from {opacity: 0.99;}
to {opacity: 1.0;}
}
table {
animation-name: any-animation;
animation-duration: 0.001s;
}
let cur_grid = document.getElementById('grid1')
// table html is created.
let str_tbl_html = '<table id="tbl_grid1" onanimationstart="hideThirdColumn()"><tbody><tr><td>1</td><td>2</td><td>3</td><td>4</td></tr><tr><td>1</td><td>2</td><td>3</td><td>4</td></tr></tbody></table>'
function hideThirdColumn() {
$('#tbl_grid1 tr td:nth-child(3)').hide()
};
我在css-tricks.com上的一篇舊博文中學(xué)到了這個(gè)技巧(他也感謝該頁面上的其他一些博主)。
添加回答
舉報(bào)