我有兩行jQuery,在完成上一行之後需要運行一行。在上一個完成之後運行一行jQuery
我知道js是逐行讀取,但第二行發生得太快。
我不能使用jQuery回調,因爲這些功能很不幸沒有它們。
我試着做一個setTimeout()
等待500ms,1000ms和1600ms,但它似乎沒有工作。在視覺上,第二行發生在第一行完成之前。
在第一個選擇器中使用的元素具有1s的css過渡,我希望完成,然後第二行發生。
是否有可能做這樣的事情:
如果轉換完成後,運行JS 否則等待,然後檢查是否過渡完成,那麼如果實際運行JS。
這裏是JS的兩行:
$('#searchInput').removeClass('slideBack').css('top', 0);
$('#headerTopBar').css('position', 'relative').hide();
'的.css()'是不是一個異步調用,因此第二隻喜歡完成後執行的第一行..除非你正在使用過渡css動畫 –
@ArunPJohny是的,我正在使用CSS過渡動畫。這就是爲什麼「transitionend」的答案有效。 – gomangomango