網(wǎng)頁特效1

1復(fù)習(xí)

  1. 根據(jù)位置返回 字符 asdfg.charAt(3)=f
    根據(jù)字符返回位置 從前面索引 asdfgg.indexOf(“f”)=3
    從后面索引lastIndexOf(“g”)=5
  2. slice(起始位置弥鹦,[ 結(jié)束位置 ])
    slice(3) 從第3個(gè)開始選 slice(3,6) 從索引號(hào)3開始取荚孵,數(shù)6個(gè) 但是從索引號(hào)0 開始數(shù)
    var arr = [1,3,5,7];
    asdfghidk fgh
    substr(3,6) 從3開始選 從第三個(gè)開始數(shù) 往后 數(shù) 6個(gè) fghidk
    toFixed(2)
    緩動(dòng)公式 :
    leader = leader + (target - leader) / 10

2offset家族

目的: js中有一套方便的獲取元素尺寸的辦法就是offset家族帖汞;


  1. offsetWidth offsetHeight
    得到對(duì)象的寬度和高度(自己的,與他人無關(guān))
    offsetWidth = width + border + padding
    div { width:220px; border-left:2px solid red; padding:10px;}
    div.offsetWidth = 220 + 2 + 20
    為什么不用 div.style.width 因?yàn)闁|西 只能得到行內(nèi)的數(shù)值

  2. offsetLeft offsetTop
    返回距離上級(jí)盒子(最近的帶有定位)左邊的位置
    如果父級(jí)都沒有定位則以body 為準(zhǔn)
    這里的父級(jí)指的是所有上一級(jí) 不僅僅指的是 父親 還可以是 爺爺 曾爺爺 曾曾爺爺苹熏。。币喧。轨域。
    offsetLeft 從父級(jí)的padding 開始算 父親的border 不算
    總結(jié)一下: 就是子盒子到定位的父盒子邊框到邊框的距離

  3. offsetParent
    返回改對(duì)象的父級(jí) (帶有定位) 不一定是親的爸爸
    前面學(xué)過一個(gè)返回父親(親的) parentNode 有所區(qū)別
    如果當(dāng)前元素的父級(jí)元素沒有進(jìn)行CSS定位(position為absolute或relative),offsetParent為body杀餐。
    2干发、如果當(dāng)前元素的父級(jí)元素中有CSS定位(position為absolute或relative),offsetParent取最近的那個(gè)父級(jí)元素史翘。

  4. offsetTop style.top 的區(qū)別

  • 最大區(qū)別在于 offsetLeft 可以返回沒有定位盒子的距離左側(cè)的位置枉长。 而 style.top 不可以 只有定位的盒子 才有 left top right
  • offsetTop 返回的是數(shù)字,而 style.top 返回的是字符串恶座,除了數(shù)字外還帶有單位:px搀暑。
    style.left = 300px parseInt(300px) 結(jié)果 300
    parseInt(style.left) + parseInt(style.left)
  • offsetTop 只讀,而 style.top 可讀寫跨琳。
  • 如果沒有給 HTML 元素指定過 top 樣式自点,則 style.top 返回的是空字符串。
  • 最重要的區(qū)別 style.left 只能得到 行內(nèi)樣式 offsetLeft 隨便

3事件對(duì)象

我們學(xué)過一些事件 : onmouseover onmouseout onclick .....
btn.onclick = function(event) { 語句 }
event 單詞翻譯過來 事件 的意思
event 就是事件的對(duì)象 指向的是 事件 是 onclick
在觸發(fā)DOM上的某個(gè)事件時(shí)脉让,會(huì)產(chǎn)生一個(gè)事件對(duì)象event桂敛,這個(gè)對(duì)象中包含著所有與事件有關(guān)的信息功炮。所有瀏覽器都支持event對(duì)象,但支持的方式不同术唬。
比如鼠標(biāo)操作時(shí)候薪伏,會(huì)添加鼠標(biāo)位置的相關(guān)信息到事件對(duì)象中。
普通瀏覽器支持 event
ie 678 支持 window.event
所以我們 采取兼容性的寫法 :
var event = event || window.event;

  1. event 常見屬性屬性 作用
  • data 返回拖拽對(duì)象的URL字符串(dragDrop)
  • width 該窗口或框架的高度
  • height 該窗口或框架的高度
  • pageX 光標(biāo)相對(duì)于該網(wǎng)頁的水平位置(ie無)
  • pageY 光標(biāo)相對(duì)于該網(wǎng)頁的垂直位置(ie無)
  • screenX 光標(biāo)相對(duì)于該屏幕的水平位置
  • screenY 光標(biāo)相對(duì)于該屏幕的垂直位置
  • target 該事件被傳送到的對(duì)象
  • type 事件的類型
  • clientX 光標(biāo)相對(duì)于該網(wǎng)頁的水平位置 (當(dāng)前可見區(qū)域)
  • clientY 光標(biāo)相對(duì)于該網(wǎng)頁的水平位置
  1. pageX clientX screenX 區(qū)別
  • screen X screenY
    是以我們的電腦屏幕 為基準(zhǔn)點(diǎn) 測(cè)量
  • pageX pageY
    以我們的 文檔 (絕對(duì)定位) 的基準(zhǔn)點(diǎn) 對(duì)齊
    ie678 不認(rèn)識(shí)
  • clientX clientY
    以 可視區(qū)域 為基準(zhǔn)點(diǎn) 類似于 固定定位

4常用事件

onmouseover onmouseout onclick
onmousemove 當(dāng)鼠標(biāo)移動(dòng)的時(shí)候 就是說粗仓,鼠標(biāo)移動(dòng)一像素就會(huì)執(zhí)行的事件
div.onmousemove = function() { 語句 }
當(dāng)鼠標(biāo)再div 身上移動(dòng)的時(shí)候嫁怀,就會(huì)執(zhí)行。
div.onmouseover 和 div.onmousemove 區(qū)別
他們相同點(diǎn) 都是 經(jīng)過 div 才會(huì)觸發(fā)
div.onmouseover 只觸發(fā)一次
div.onmousemove 每移動(dòng)一像素借浊,就會(huì)觸發(fā)一次

onmouseup 當(dāng)鼠標(biāo)彈起
onmousedown 當(dāng)鼠標(biāo)按下的時(shí)候

  • 拖動(dòng) 原理 == 鼠標(biāo)按下 接著 移動(dòng)鼠標(biāo) 塘淑。
            document.onmousemove = function(){ 
            }
 }

當(dāng)我們按下鼠標(biāo)的時(shí)候,就要記錄當(dāng)前 鼠標(biāo) 的位置 - 大盒子的位置
算出 bar 當(dāng)前 在 大盒子內(nèi)的距離 蚂斤。

  • 防止選擇拖動(dòng)
    我們知道 按下鼠標(biāo)然后拖拽可以選擇文字 的存捺。
    清除選中的內(nèi)容

window.getSelection ? window.getSelection().removeAllRanges() : document.selection.empty();

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市曙蒸,隨后出現(xiàn)的幾起案子捌治,更是在濱河造成了極大的恐慌,老刑警劉巖纽窟,帶你破解...
    沈念sama閱讀 206,482評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件肖油,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡师倔,警方通過查閱死者的電腦和手機(jī)构韵,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來趋艘,“玉大人疲恢,你說我怎么就攤上這事〈呻剩” “怎么了显拳?”我有些...
    開封第一講書人閱讀 152,762評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長搓萧。 經(jīng)常有香客問我杂数,道長,這世上最難降的妖魔是什么瘸洛? 我笑而不...
    開封第一講書人閱讀 55,273評(píng)論 1 279
  • 正文 為了忘掉前任揍移,我火速辦了婚禮,結(jié)果婚禮上反肋,老公的妹妹穿的比我還像新娘那伐。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,289評(píng)論 5 373
  • 文/花漫 我一把揭開白布罕邀。 她就那樣靜靜地躺著畅形,像睡著了一般。 火紅的嫁衣襯著肌膚如雪诉探。 梳的紋絲不亂的頭發(fā)上日熬,一...
    開封第一講書人閱讀 49,046評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音肾胯,去河邊找鬼竖席。 笑死,一個(gè)胖子當(dāng)著我的面吹牛敬肚,可吹牛的內(nèi)容都是我干的怕敬。 我是一名探鬼主播,決...
    沈念sama閱讀 38,351評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼帘皿,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了畸陡?” 一聲冷哼從身側(cè)響起鹰溜,我...
    開封第一講書人閱讀 36,988評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎丁恭,沒想到半個(gè)月后曹动,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,476評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡牲览,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,948評(píng)論 2 324
  • 正文 我和宋清朗相戀三年墓陈,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片第献。...
    茶點(diǎn)故事閱讀 38,064評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡贡必,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出庸毫,到底是詐尸還是另有隱情仔拟,我是刑警寧澤,帶...
    沈念sama閱讀 33,712評(píng)論 4 323
  • 正文 年R本政府宣布飒赃,位于F島的核電站利花,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏载佳。R本人自食惡果不足惜炒事,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,261評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望蔫慧。 院中可真熱鬧挠乳,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至威蕉,卻和暖如春刁俭,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背韧涨。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評(píng)論 1 262
  • 我被黑心中介騙來泰國打工牍戚, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人虑粥。 一個(gè)月前我還...
    沈念sama閱讀 45,511評(píng)論 2 354
  • 正文 我出身青樓如孝,卻偏偏與公主長得像,于是被迫代替她去往敵國和親娩贷。 傳聞我的和親對(duì)象是個(gè)殘疾皇子第晰,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,802評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容