簡體   English   中英

是否有一個普通的普通JS / HTML(或JQuery)事件在元素開始/結束渲染時觸發?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM