-
math.float是取整
查看全部 -
CTRL+shift+/*? ? 或者//? ?代表注釋
查看全部 -
時(shí)間處理程序
查看全部 -
跨瀏覽器封裝對(duì)象
查看全部 -
事件處理程序
查看全部 -
事件捕獲:由不具體到具體
查看全部 -
點(diǎn)擊事件元素不僅是按鈕,還包括裝載按鈕的父盒子以及父盒子以上的元素,上溯到html元素
查看全部 -
//IE事件處理程序
undefined
//一個(gè)叫attachevent和detachevent,只需要告訴他事件處理程序的名稱和事件處理程序的函數(shù),會(huì)發(fā)現(xiàn)去掉了第三個(gè)布爾值,是因?yàn)閕e默認(rèn)是冒泡模式
undefined
//在這里面和dom事件的區(qū)別就是需要把on加上,記住在添加和刪除的時(shí)候傳入的參數(shù)要一樣
undefined
//在Chrome里面是不能用attach和detach的,但是在ie里面使用add和delete的時(shí)候就不能用attach和detach了,這個(gè)時(shí)候就要跨瀏覽器操作
undefined
//跨瀏覽器操作是可以通過構(gòu)建對(duì)象的方式來實(shí)現(xiàn),
undefined
var eventUtil = {
? ? ? addHandler:function(element,type,handler){
? ? ? ? if(element.addEventListener){
? ? ? ? ? ? element.addEventListener(element,type,handler);
}
}
}
undefined
var eventUtil = {
? ? ? addHandler:function(element,type,handler){
? ? ? ? if(element.addEventListener){//非IE
? ? ? ? ? ? element.addEventListener(type,handler,false);
}
? ? ? ? else if(element.attachEvent){//IE瀏覽器的
? ? ? ? element.attachEvent('on'+type,handler);
}
? ? ? ? else{//dom0級(jí)別的
? ? ? ? elsement['on'+type] = hanler;//記住所有能用.的地方都可以用【】,只不過用.方便點(diǎn)
}
}
}
undefined
//上面就得到了一個(gè)被封裝好的添加和刪除的對(duì)象,這樣就實(shí)現(xiàn)了跨瀏覽器的操作
undefined
//在調(diào)用的時(shí)候
undefined
2138:1 Unchecked runtime.lastError: The message port closed before a response was received.
eventUtil.addHandler(element,type,handler)
查看全部 -
?//在以前給html添加事件的時(shí)候是將事件當(dāng)作屬性寫在html里面的,但是現(xiàn)在的dom0級(jí)則是將其先get出來然后在腳本里面添加一個(gè)屬性
查看全部 -
//這一章介紹的是什么是事件流,起初的思想是我們是通過事件來將js和html頁面結(jié)合起來,這樣去想的話就是說我們?cè)诔霭l(fā)一個(gè)事件的時(shí)候要聯(lián)想到整個(gè)框架的反應(yīng),基于此,整個(gè)框架的反應(yīng)模式有兩種,一種是事件冒泡
undefined
//1、事件冒泡就是說我們?cè)诔霭l(fā)一個(gè)事件的時(shí)候,事件最開始由最具體的元素(文檔中的嵌套層次最深的那個(gè)元素)接收,然后逐級(jí)向上傳播至最不具體的那個(gè)節(jié)點(diǎn)(文檔)
undefined
//1、事件冒泡就是說我們?cè)诔霭l(fā)一個(gè)事件的時(shí)候,事件最開始由最具體的元素(文檔中的嵌套層次最深的那個(gè)元素)接收,然后逐級(jí)向上傳播至最不具體的那個(gè)節(jié)點(diǎn)(文檔),舉個(gè)例子,我們觸發(fā)input事件,然后是div,然后是body,然后是html,然后是整個(gè)document
undefined
//2、事件捕獲
undefined
//事件捕獲的情況正好相反,就是說document、html、body、div、input
查看全部 -
事件對(duì)象的獲取,類型,阻止冒泡,阻止默認(rèn)等,兼容方法查看全部
-
跨瀏覽器添加事件兼容方法查看全部
-
添加事件與刪除事件的方法,IE8及以上查看全部
-
E和其他瀏覽器事件對(duì)象區(qū)別
查看全部 -
IE8瀏覽器處理event兼容,取window.event查看全部 -
事件對(duì)象內(nèi)容
查看全部 -
IE事件處理程序
attachEvent()添加事件
detachEvent()刪除事件
接受兩個(gè)相同的參數(shù):事件處理程序的名稱和事件處理程序的函數(shù)
查看全部 -
DOM0級(jí)事件處理程序:較傳統(tǒng)的方式:把一個(gè)函數(shù)賦值給一個(gè)事件的處理程序?qū)傩?,用的比較多。優(yōu)點(diǎn):簡(jiǎn)單,跨瀏覽器的優(yōu)勢(shì)
查看全部 -
事件捕獲:不太具體的節(jié)點(diǎn)應(yīng)該更早接收到事件,而最具體的節(jié)點(diǎn)最后接收到事件
查看全部 -
這個(gè)比qq登錄界面的要容易一些,不過基本一樣
查看全部 -
這個(gè)比QQ界面的要容易一些,不過基本一樣
查看全部 -
做完QQ登錄界面之后再做這個(gè)輕松了許多
查看全部 -
window.onload?=?function?()?{ ????var?data?=?['Phone5',?'Ipad',?'三星筆記本',?'佳能相機(jī)',?'惠普打印機(jī)',?'謝謝參與',?'50元充值卡',?'1000元超市購(gòu)物券'], ????????txt?=?document.getElementById('txt'),?//抽獎(jiǎng)結(jié)果 ????????play?=?document.getElementById('play'),?//開始按鈕 ????????stop?=?document.getElementById('stop'),?//結(jié)束按鈕 ????????timer?=?null;?//計(jì)時(shí)器 ????????flag?=?false;?//定時(shí)器狀態(tài)標(biāo)記 ????play.style.backgroundColor?=?'#036';?//設(shè)置按鈕初始顏色 ????stop.style.backgroundColor?=?'gray'; ????play.onclick?=?playFun;?//點(diǎn)擊開始按鈕事件 ????stop.onclick?=?stopFun; ????//按任意鍵事件 ????document.onkeyup?=?function?()?{ ????????//判斷是否為空格鍵 ????????if?(event.keyCode?==?32)?{ ????????????//判斷定時(shí)器狀態(tài) ????????????if?(flag?==?false)?{ ????????????????playFun(); ????????????}?else?{ ????????????????stopFun(); ????????????} ????????} ????} ????//開始抽獎(jiǎng) ????function?playFun()?{ ????????clearInterval(timer);?//清除上一個(gè)定時(shí)器,避免重復(fù)添加 ????????//設(shè)置定時(shí)器 ????????timer?=?setInterval(function?()?{ ????????????txt.innerHTML?=?data[Math.floor(Math.random()?*?data.length)];?//隨機(jī)獎(jiǎng)品 ????????},?100); ????????play.style.backgroundColor?=?'gray';?//修改按鈕顏色 ????????stop.style.backgroundColor?=?'#036'; ????????flag?=?true;?//定時(shí)器標(biāo)記為開 ????} ????//結(jié)束抽獎(jiǎng) ????function?stopFun()?{ ????????clearInterval(timer); ????????play.style.backgroundColor?=?'#036'; ????????stop.style.backgroundColor?=?'gray'; ????????flag?=?false;?//定時(shí)器標(biāo)記為關(guān) ????} }
查看全部 -
//HTML渲染完后再加載 window.onload?=?function?()?{ ??var?oPanel?=?document.getElementById('loginPanel');?//登錄界面 ??var?oTitle?=?document.getElementsByClassName('login_logo_webqq')[0];?//標(biāo)題欄 ??var?oStatus?=?document.getElementById('loginState');?//狀態(tài)欄 ??var?oClock?=?document.getElementById('ui_boxyClose');?//關(guān)閉按鈕 ??//按住標(biāo)題欄事件 ??oTitle.onmousedown?=?function?()?{ ????var?disX?=?event.clientX?-?oPanel.offsetLeft;?//鼠標(biāo)點(diǎn)擊處和界面左邊界的距離 ????var?disY?=?event.clientY?-?oPanel.offsetTop;?//鼠標(biāo)點(diǎn)擊處和界面上邊界的距離 ????//鼠標(biāo)移動(dòng)事件:觸發(fā)登陸界面跟隨 ????document.onmousemove?=?function?(event/*傳入事件*/)?{ ??????event?=?event?||?window.event;?//取出事件 ??????var?left?=?event.clientX?-?disX;?//界面左邊界水平坐標(biāo) ??????var?top?=?event.clientY?-?disY;?//界面上邊界垂直坐標(biāo) ??????var?maxLeft?=?document.documentElement.clientWidth?-?oPanel.offsetWidth;?//界面左邊界水平坐標(biāo)最大限制 ??????var?maxTop?=?document.documentElement.clientHeight?-?oPanel.offsetHeight;?//界面上邊界垂直坐標(biāo)最大限制 ??????//如果水平坐標(biāo)超過最大限制,則界面不再跟隨鼠標(biāo)移動(dòng) ??????if?(left?>?maxLeft?-?10)?{ ????????left?=?maxLeft?-?10;?//為關(guān)閉按鈕預(yù)留10px空間 ??????}?else?if?(left?<?0)?{ ????????left?=?0; ??????} ??????//同理 ??????if?(top?>?maxTop)?{ ????????top?=?maxTop; ??????}?else?if?(top?<?10)?{ ????????top?=?10;?//為關(guān)閉按鈕預(yù)留10px空間 ??????} ??????oPanel.style.left?=?left?+?'px';?//client和offset為整型數(shù),不帶單位 ??????oPanel.style.top?=?top?+?'px'; ??????//松開鼠標(biāo)鍵事件:界面不再跟隨 ??????document.onmouseup?=?function?()?{ ????????document.onmousemove?=?null;?//移動(dòng)事件不再觸發(fā)任何活動(dòng) ??????} ????} ??} ??//點(diǎn)擊狀態(tài)欄事件:彈出狀態(tài)選擇菜單(下拉菜單) ??oStatus.onclick?=?function?()?{ ????event.stopPropagation();?//阻止冒泡事件,防止點(diǎn)擊了父節(jié)點(diǎn)(HTML文檔)導(dǎo)致菜單關(guān)閉 ????var?sPanel?=?document.getElementById('loginStatePanel');?//下拉菜單 ????var?pLists?=?document.getElementsByClassName('statePanel_li');?//菜單列表 ????sPanel.style.display?=?'block';?//顯示下HTML拉菜單 ????//遍歷菜單列表,添加動(dòng)態(tài)效果 ????for?(var?i?=?0;?i?<?pLists.length;?i++)?{ ??????//鼠標(biāo)經(jīng)過事件:觸發(fā)灰色背景 ??????pLists[i].onmouseover?=?function?()?{ ????????this.style.backgroundColor?=?'#999'; ??????} ??????//鼠標(biāo)移開事件:背景顏色恢復(fù) ??????pLists[i].onmouseout?=?function?()?{ ????????this.style.backgroundColor?=?'#fff'; ??????} ??????//鼠標(biāo)點(diǎn)擊事件:更改狀態(tài)欄內(nèi)容并關(guān)閉下拉菜單 ??????pLists[i].onclick?=?function?(event)?{ ????????event?=?event?||?window.event; ????????event.stopPropagation();?//阻止冒泡事件,防止點(diǎn)擊了父節(jié)點(diǎn)(狀態(tài)欄)導(dǎo)致下拉菜單關(guān)閉失敗 ????????var?sShow?=?document.getElementById('loginStateShow');?//狀態(tài)欄圖標(biāo) ????????var?sTxt?=?document.getElementById('login2qq_state_txt');?//狀態(tài)欄文本 ????????sShow.className?=?'login-state-show?'?+?this.id;?//修改狀態(tài)欄圖標(biāo)為選中項(xiàng)的狀態(tài)圖標(biāo) ????????sTxt.innerHTML?=?this.getElementsByTagName('div')[1].innerHTML;?//修改狀態(tài)欄文本為選中項(xiàng)的狀態(tài)文本 ????????sPanel.style.display?=?'none';?//關(guān)閉下拉菜單 ??????} ????} ????/*點(diǎn)擊HTML文檔事件(除狀態(tài)欄外的其他區(qū)域):觸發(fā)下拉菜單關(guān)閉 ??????若點(diǎn)擊了狀態(tài)欄,則不會(huì)觸發(fā)此操作(冒泡被阻止)*/ ????document.onclick?=?function?()?{ ??????sPanel.style.display?=?'none'; ????} ??} ??//點(diǎn)擊關(guān)閉按鈕事件:觸發(fā)登錄界面隱藏 ??oClock.onclick?=?function?()?{ ????oPanel.style.display?=?'none'; ??} }
查看全部 -
IE事件處理程序:
attachEvent()添加事件
detachEvent()刪除事件
接收相同的兩個(gè)參數(shù):事件處理程序的名稱(加on)和事件處理程序的函數(shù)?
查看全部
舉報(bào)