簡體   English   中英

Laravel/FancyTree 中 Jquery 對 CSS 所做的更改僅反映在 function 的末尾

[英]Changes made by Jquery to CSS in Laravel/FancyTree is only reflected at the end of the function

我目前有一個花哨的樹,當激活一個節點時,它將運行一堆消耗時間的 ajax/后端代碼。

期望的結果:單擊節點時,活動事件處理程序應捕獲事件並顯示加載圖標,直到在刪除加載圖標之前完成以下所有代碼然而,jquery 所做的 CSS 更改直到之后才運行function 已經完成,即使在附加的 ajax 和后端代碼集之前已經調用了 jquery 命令。 這導致加載程序根本沒有被反映。

糟糕的解決方案:在加載程序的可見性切換之間設置 windows 超時允許加載程序在再次刪除之前實際反映到屏幕上。

activate: function(event, d) {
console.log('make loader appear');
 $('#loader').css('display','block')
//bunch of random code here
$('#loader').css('display','none')
}

盡管在后端代碼之前和之后調用了jquery代碼,但加載器從未出現過

我認為這可能是因為在您顯示加載指示器后,您會立即將其隱藏。

在事件激活 function 中查看您的代碼:

$('#loader').css('display','block') //bunch of random code here $('#loader').css('display','none')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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