Todo lo que necesito hacer es retrasar la ventana emergente para que no "aparezca" durante unos segundos después de hacer clic en un botón. ¿Hay algo malo con este código?
$(document).ready(function() { $('#element-167 a').on("click", function() { $('.modal-dialog').delay(5000).fadeIn(); }); }); <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>Podrías usar queue() y pasar una función como parámetro:
$(document).ready(function() { $('#element-167 a').on("click", function() { $(".modal-dialog").delay(5000).queue(() => { // Do things after 5 seconds $('.modal-dialog').fadeIn(); }) }); });Intenta usar setTimeout
$(document).ready(function() { $('#selected').on("click", function() { setTimeout(()=>{alert("Message here")},5000) }); }); <p id="selected">This is second paragraph.</p>