[英]Is there a normal vanilla JS/HTML (or JQuery) event that fires when an element begins/finishes rendering?
我想要類似於document.ready
事件,但適用於任何DOM元素。
更詳細地講,我正在破解具有自定義框架的應用程序。 我正在嘗試添加加載屏幕。 每當屏幕上彈出某個元素時,該屏幕就會消失。
現在我真的不知道如何以一種干凈的方式進行此操作,或者建議采用哪種方式進行此類操作,但就目前而言,如果我可以實現此偽代碼就足夠了
container.show_loading_spinner()
// .. other stuff ...
// this should only trigger when the next line, which starts creating elements begins
container.on_drawing_begin(function()
{container.hide_loading_spinner()})
//when this begins drawing, the spinner should get hidden.
container.create_some_elements()
我意識到這可能非常復雜,並且希望我不會被視為菜鳥,但我主要專注於后端開發。 我要問的這個事情是否可能,還是我應該以一種完全不同的方式來思考?
[編輯]
問:我對“渲染”的定義是什么?
答:當元素出現在DOM中並在屏幕上可見時,我稱其為“渲染”。 它不在DOM中的那一刻,它是未渲染的。 渲染是將DOM(以及相應的屏幕-如果該元素可見)從第一狀態進入第二狀態的過程。
更隨意地說,盡管我只想“某個事件”,它在元素開始渲染的那一刻非常接近地觸發。 我需要開始,因為那是我想關閉微調器的時間。 我不希望微調器與我的元素同時出現在屏幕上。
如果在開始渲染元素時觸發了諸如hideSpinner
類的自定義事件, hideSpinner
怎么辦?
https://developer.mozilla.org/zh-CN/docs/Web/Guide/Events/Creating_and_triggering_events
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.