JS按鈕倒計(jì)時(shí)并跳轉(zhuǎn)到新地址的實(shí)現(xiàn)代碼
JS按鈕倒計(jì)時(shí)并跳轉(zhuǎn)到新地址
場(chǎng)景:在完成某項(xiàng)操作時(shí),按鈕上有個(gè)倒計(jì)時(shí)效果,倒計(jì)時(shí)結(jié)束后,跳轉(zhuǎn)到新地址
效果如下:

實(shí)現(xiàn)代碼:
<a class="backUpPage" href="javascript:void(0);" rel="external nofollow" ><span></span>秒后 返回</a>
$(function () {
var time = 5
$('.backUpPage span').html(time)
var timeFn = setInterval(function(){
time--
$('.backUpPage span').html(time)
if(time==0){
clearTimeout(timeFn)
window.location = 'http://www.baidu.com/'
}
},1000)
})補(bǔ)充:用Javascript實(shí)現(xiàn)點(diǎn)擊按鈕倒計(jì)時(shí)跳轉(zhuǎn)到其他頁(yè)面
用Javascript實(shí)現(xiàn)點(diǎn)擊按鈕倒計(jì)時(shí)跳轉(zhuǎn)到其他頁(yè)面
正在學(xué)習(xí)大前端中,有代碼和思路不規(guī)范不正確的地方往多多包涵,感謝指教
在光網(wǎng)頁(yè)時(shí),我們通常點(diǎn)擊某個(gè)按鈕不會(huì)立即跳轉(zhuǎn),而是倒計(jì)時(shí),等幾秒鐘之后再進(jìn)行跳轉(zhuǎn),下面我們用代碼來(lái)實(shí)現(xiàn) **代碼如下**
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<button>點(diǎn)我跳轉(zhuǎn)</button>
<div></div>
<script>
var div=document.querySelector('div')
var btn=document.querySelector('button')
btn.addEventListener('click',function () {
var timeer = 5
btn.disabled=true
x()
setInterval(x,1000)
function x() {
if (timeer == 0) {
btn.disabled=false
location.
} else {
btn.innerHTML = '還剩' + timeer + '秒'
div.innerHTML = '寧再' + timeer + '秒跳轉(zhuǎn)'
timeer--
}
}
})
</script>
</body>
</html>效果展示:




代碼解釋:
這里我們要改變兩個(gè)地方,所以獲取的是按鈕和div
然后當(dāng)我們點(diǎn)擊按鈕時(shí),觸發(fā)點(diǎn)擊事件,讓按鈕變?yōu)椴豢牲c(diǎn)擊,并且倒計(jì)時(shí),這樣就可以防止多次快速點(diǎn)擊導(dǎo)致無(wú)法進(jìn)行網(wǎng)頁(yè)跳轉(zhuǎn),然后定義一個(gè)變量timmer為5。
然后創(chuàng)建一個(gè)函數(shù),然后進(jìn)行判斷倒計(jì)時(shí)時(shí)間是否等于0,如果等于0,那么直接跳轉(zhuǎn)到新頁(yè)面新網(wǎng)址,并且將按鈕的狀態(tài)變?yōu)榭牲c(diǎn)擊,文字也改為最開(kāi)始的文字。如果大于0,按鈕繼續(xù)不可點(diǎn)擊,文字也修改為’還剩’ + timeer + ‘秒’,那么邊修改按鈕下方的文字’寧再’ + timeer + ‘秒跳轉(zhuǎn)’,然后繼續(xù)讓倒計(jì)時(shí)的時(shí)間減少。
然后創(chuàng)建一個(gè)定時(shí)器,將這個(gè)函數(shù)放進(jìn)去,時(shí)間間隔設(shè)置為1秒,這樣就實(shí)現(xiàn)了這個(gè)功能
到此這篇關(guān)于JS按鈕倒計(jì)時(shí)并跳轉(zhuǎn)到新地址的文章就介紹到這了,更多相關(guān)js按鈕倒計(jì)時(shí)跳轉(zhuǎn)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- JS+HTML5實(shí)現(xiàn)獲取手機(jī)驗(yàn)證碼倒計(jì)時(shí)按鈕
- JS實(shí)現(xiàn)的倒計(jì)時(shí)恢復(fù)按鈕點(diǎn)擊功能【可用于協(xié)議閱讀倒計(jì)時(shí)】
- Angular.js實(shí)現(xiàn)獲取驗(yàn)證碼倒計(jì)時(shí)60秒按鈕的簡(jiǎn)單方法
- JS實(shí)現(xiàn)發(fā)送短信驗(yàn)證后按鈕倒計(jì)時(shí)功能(防止刷新倒計(jì)時(shí)失效)
- 點(diǎn)擊按鈕出現(xiàn)60秒倒計(jì)時(shí)的簡(jiǎn)單js代碼(推薦)
- js代碼實(shí)現(xiàn)點(diǎn)擊按鈕出現(xiàn)60秒倒計(jì)時(shí)
- JS自動(dòng)倒計(jì)時(shí)30秒后按鈕才可用(兩種場(chǎng)景)
相關(guān)文章
網(wǎng)頁(yè)前端登錄js按Enter回車(chē)鍵實(shí)現(xiàn)登陸的兩種方法
下面小編就為大家?guī)?lái)一篇網(wǎng)頁(yè)前端登錄js按Enter回車(chē)鍵實(shí)現(xiàn)登陸的兩種方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考2016-05-05
Openlayers實(shí)現(xiàn)地圖的基本操作
這篇文章主要為大家詳細(xì)介紹了Openlayers實(shí)現(xiàn)地圖的基本操作,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-09-09
EL表達(dá)式截取字符串的函數(shù)說(shuō)明
這篇文章主要介紹了EL表達(dá)式截取字符串的函數(shù)說(shuō)明,在文章下面給大家介紹了JSTL中自帶的方法列表以及其描述,需要的朋友參考下吧2017-09-09
基于JS實(shí)現(xiàn)簡(jiǎn)單的隨機(jī)抽取幸運(yùn)員工系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了基于HTML+JavaScript實(shí)現(xiàn)簡(jiǎn)單的隨機(jī)抽取幸運(yùn)員工系統(tǒng),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下2023-11-11
promise結(jié)合requestAnimationFrame用法示例
這篇文章主要為大家介紹了promise結(jié)合requestAnimationFrame用法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11
Bootstrap登陸注冊(cè)頁(yè)面開(kāi)發(fā)教程
這篇文章主要介紹了Bootstrap登陸注冊(cè)頁(yè)面開(kāi)發(fā)教程,感興趣的小伙伴們可以參考一下2016-07-07
24個(gè)ES6方法解決JS實(shí)際開(kāi)發(fā)問(wèn)題(小結(jié))
這篇文章主要介紹了24個(gè)ES6方法解決JS實(shí)際開(kāi)發(fā)問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05
javascript檢測(cè)瀏覽器的縮放狀態(tài)實(shí)現(xiàn)代碼
這篇文章主要介紹了javascript檢測(cè)瀏覽器的縮放狀態(tài)實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-09-09
JavaScript 5 新增 Array 方法實(shí)現(xiàn)介紹
JavaScript 5 發(fā)布有一段時(shí)間了,Array 對(duì)象新增了很多方法。但在老版本的瀏覽器上還不能使用,得益于 JavaScript 的動(dòng)態(tài)可擴(kuò)展性,我實(shí)現(xiàn)了這些方法,在此曬出來(lái)與君共勉2012-02-02

