第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

setTimeout / clearTimeout問(wèn)題

setTimeout / clearTimeout問(wèn)題

慕桂英546537 2019-12-20 09:56:58
我嘗試使頁(yè)面轉(zhuǎn)到例如eg之后的首頁(yè)。10秒鐘不活動(dòng)(用戶未單擊任何位置)。我使用jQuery進(jìn)行其余操作,但測(cè)試功能中的設(shè)置/清除是純JavaScript。令我沮喪的是,我最終得到了類似該功能的東西,希望我可以在該頁(yè)面上單擊任何按鈕。計(jì)時(shí)器可以正常啟動(dòng),但單擊后不會(huì)重置。如果在前10秒內(nèi)調(diào)用該函數(shù)5次,則將出現(xiàn)5條警報(bào)...無(wú)clearTimeout ...function endAndStartTimer() {    window.clearTimeout(timer);    var timer;    //var millisecBeforeRedirect = 10000;     timer = window.setTimeout(function(){alert('Hello!');},10000); }有人得到一些可以解決問(wèn)題的代碼行嗎?-在任何點(diǎn)擊停止時(shí),重置并啟動(dòng)計(jì)時(shí)器。-當(dāng)計(jì)時(shí)器命中時(shí) 10sec做點(diǎn)什么。
查看完整描述

3 回答

?
烙印99

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超13個(gè)贊

您需要在函數(shù)timer 外部聲明。否則,您將在每次函數(shù)調(diào)用時(shí)獲得一個(gè)全新的變量。


var timer;

function endAndStartTimer() {

  window.clearTimeout(timer);

  //var millisecBeforeRedirect = 10000; 

  timer = window.setTimeout(function(){alert('Hello!');},10000); 

}


查看完整回答
反對(duì) 回復(fù) 2019-12-20
?
慕哥6287543

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超10個(gè)贊

問(wèn)題在于該timer變量是局部變量,并且在每個(gè)函數(shù)調(diào)用之后其值都會(huì)丟失。


您需要持久化它,可以將其放在函數(shù)外部,或者如果您不想將變量公開(kāi)為全局變量,則可以將其存儲(chǔ)在閉包中,例如:


var endAndStartTimer = (function () {

  var timer; // variable persisted here

  return function () {

    window.clearTimeout(timer);

    //var millisecBeforeRedirect = 10000; 

    timer = window.setTimeout(function(){alert('Hello!');},10000); 

  };

})();


查看完整回答
反對(duì) 回復(fù) 2019-12-20
?
侃侃無(wú)極

TA貢獻(xiàn)2051條經(jīng)驗(yàn) 獲得超10個(gè)贊

在反應(yīng)中使用此方法:


class Timeout extends Component {

  constructor(props){

    super(props)


    this.state = {

      timeout: null

    }


  }


  userTimeout(){

    const { timeout } = this.state;

    clearTimeout(timeout);

    this.setState({

      timeout: setTimeout(() => {this.callAPI()}, 250)

    })


  }

}

例如,如果您只想在用戶停止輸入后才調(diào)用API,則該功能非常有用。可以通過(guò)onKeyUp將userTimeout函數(shù)綁定到輸入。


查看完整回答
反對(duì) 回復(fù) 2019-12-20
  • 3 回答
  • 0 關(guān)注
  • 585 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)