按按鈕後延遲一秒再 location.href ?

當 click後
我是否能延遲一秒後再 location.href ?
在 location.href 之前我會先執行 html()

$("button").click(function(){
 $("#x").html('xx');
// 這之間間隔一秒
 location.href='...';
});
阅读 3.4k
2 个回答

- - ? 是不是误解了你的意思,你想达到什么效果?
只是要延迟的话用setTimeout延迟一下不就好了吗?

// 同步
clickHandler = function () {
    // do something
    setTimeout(function () {
        // do something
    }, 1000)
}
// 异步
clickHandler = function () {
    // do something
    $.post(xxx, function () {
        setTimeout(function () {
            // do something
        }, 1000)
    })
}

用 Promise 吧

$("button").click(function(){
 $("#x").html('xx')
 let p = new Promise(function (resolve, reject) {
   setTimeout(function () {
     resolve()
   }, 1000)
 })
 p.then(function () {
   location.href='...'
 })
})
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题