DOM_06之定时器、事件、cookie
1、定時器:①任務(wù)函數(shù):函數(shù)結(jié)尾判斷臨界值;②啟動定時器:a、周期性:timer=setInterval(任務(wù)函數(shù),interval);b、一次性:timer=setTimeout(任務(wù)函數(shù),wait);③停止定時器:a、周期性:clearInterval(timer);timer=null;b、一次性:clearTimeout(timer);timer=null;
2、動畫:變量:DISTANCE,DURATION,STEPS,step,interval,timer,moved;函數(shù):start():setInterval(moveStep,bind(this),interval);moveStep():對象移動step;
3、事件:用戶手動觸發(fā),瀏覽器自動觸發(fā),元素狀態(tài)改變;當(dāng)事件發(fā)生時,瀏覽器自動調(diào)用事件處理函數(shù);綁定事件處理函數(shù):①在元素開始標(biāo)簽中綁定,<button οnclick=“js語句(this)”></button>;button.οnclick=function(){eval(“js語句(this)”)};單擊按鈕時,button.onclick();②js中為元素事件處理函數(shù)屬性賦值:btn.οnclick=function(){//this=>button;……};③使用API添加事件監(jiān)聽:a、添加:btn.addEventListener(“事件名”,函數(shù)對象);b、移除:btn.removeEventListener(“事件名”,函數(shù)對象);
4、事件周期:①捕獲:從外層元素向內(nèi)層元素逐個記錄綁定事件處理函數(shù),默認(rèn)暫不觸發(fā)任何事件;②目標(biāo)觸發(fā):優(yōu)先觸發(fā)目標(biāo)元素上綁定的事件處理函數(shù);*(目標(biāo)元素為實際點擊的元素;);③冒泡:按照捕獲的順序由內(nèi)層向外層逐層觸發(fā)捕獲的事件處理函數(shù);修改事件觸發(fā)順序:btn.addEventListener(“事件名”,函數(shù)對象,capture);*(capture表示是否在捕獲階段提前觸發(fā),取值true或false);
5、事件對象:事件發(fā)生時,自動創(chuàng)建封裝事件信息的對象event,作為事件處理函數(shù)的第一個參數(shù)自動傳入;①阻止冒泡:e.stopPropagation();②利用冒泡:可減少事件監(jiān)聽對象,但須獲得目標(biāo)元素:target;*(因為事件監(jiān)聽易形成閉包難以釋放;);③取消事件(阻止默認(rèn)行為):e.preventDefault();
6、事件坐標(biāo):①參照屏幕左上角:e.screenX,e.screenY;②參照文檔顯示區(qū)左上角:e.clientX或e.x,e.clientY或e.y;③參照所在父元素的左上角:e.offsetX,e.offsetY;
7、頁面滾動事件:onscroll;獲得頁面滾動過的距離:document.body.scrollTop或document.documentElement.scrollTop;
8、cookie:創(chuàng)建:document.cookie=“變量名=值;expires=”+date.toGMTString();
轉(zhuǎn)載于:https://www.cnblogs.com/Jupiter258/p/6023716.html
總結(jié)
以上是生活随笔為你收集整理的DOM_06之定时器、事件、cookie的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MYSQL数据库性能调优之六:备份
- 下一篇: 如何判断ios设备中是否安装了某款应用