自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

盤點JavaScript中那些進階操作知識(下篇)

開發(fā) 前端
相信做網(wǎng)站對JavaScript再熟悉不過了,它是一門腳本語言,不同于Python的是,它是一門瀏覽器腳本語言,而Python則是服務(wù)器腳本語言,我們不光要會Python,還要會JavaScript,因為它對做網(wǎng)頁方面是有很大作用的。

[[420301]]

大家好,我是IT共享者,人稱皮皮。上篇文章給大家分享了盤點JavaScript中那些進階操作知識(上篇),這篇文章繼續(xù)來看看趴!

前言

相信做網(wǎng)站對JavaScript再熟悉不過了,它是一門腳本語言,不同于Python的是,它是一門瀏覽器腳本語言,而Python則是服務(wù)器腳本語言,我們不光要會Python,還要會JavaScript,因為它對做網(wǎng)頁方面是有很大作用的。

1.Javascript刷新頁面

  1. history.go(0)  
  2. location.reload()  
  3. location=location  
  4. location.assign(location)  
  5. document.execCommand('Refresh')  
  6. window.navigate(location)  
  7. location.replace(location)  
  8. document.URL=location.href 

2.Js瀏覽器兼容問題

1).瀏覽器事件監(jiān)聽

  1. function addEventhandler(target,type,fn,cap){ 
  2.             if(target.addEventListener)               /*添加監(jiān)聽事件*/ 
  3.               {        
  4.                 target.addEventListener(type,fn,cap) 
  5.                 } 
  6.             else
  7.                  target.attachEvent('on'+type,fn)  /*IE添加監(jiān)聽事件*/ 
  8.                } 
  9.           } 
  10.        function removeEventhandler(target,type,fn,cap){ 
  11.             if(target.removeEventListener)            /*刪除監(jiān)聽事件*/ 
  12.              { 
  13.                 target.removeEventListener(type,fn,cap) 
  14.                 } 
  15.             else
  16.                  target.detachEvent('on'+type,fn)    /*IE刪除監(jiān)聽事件*/ 
  17.                } 
  18.           } 

2).鼠標鍵判斷

  1. function bu(event) 
  2. var bt= window.button || event.button; 
  3. if (bt==2) 
  4.   { 
  5.   x=event.clientX 
  6.   y=event.clientY    
  7.   alert("您點擊了鼠標右鍵!坐標為:"+x+','+y) 
  8.   } 
  9. else if(bt==0) 
  10.   { 
  11.     a=event.screenX 
  12.     b=event.screenY 
  13.   alert("您點擊了鼠標左鍵!坐標為:"+a+','+b) 
  14.   } 
  15. else if(bt==1) 
  16.   { 
  17.   alert("您點擊了鼠標中鍵!"); 
  18.   } 

3).判斷是否按下某鍵

  1. function k(event) 
  2. var ke=event.keyCode || event.which 
  3. if(event.shiftKey==1) 
  4.   { 
  5.   alert('您點擊了shift'); 
  6.   } 
  7.  alert(ke) 
  8.  alert(event.type) 

4).網(wǎng)頁內(nèi)容節(jié)點兼容性

1)).網(wǎng)頁可視區(qū)域?qū)捀?/p>

  1. var w=document.body.offsetWidth|| document.documentElement.clientWidth|| document.body.clientWidth; 
  2. var h=document.body.offsetHeight|| document.documentElement.clientHeight || document.body.clientHeight; 

2)).窗體寬度高度 比可視區(qū)域要大

  1. window.innerHeight - 瀏覽器窗口的內(nèi)高度(以像素計)  
  2. window.innerWidth - 瀏覽器窗口的內(nèi)寬度(以像素計) 

3)).頁面滾動條距離頂部的距離

  1. var t=document.documentElement.scrollTop || document.body.scrollTop 

4)).頁面滾動條距離左邊的距離

  1. var s=document.documentElement.scrollLeft || document.body.scrollLeft 

5)).元素到瀏覽器邊緣的距離

  1. function off(o){   #元素內(nèi)容距離瀏覽器邊框的距離(含邊框) 
  2.        var l=0,r=0; 
  3.        while(o){ 
  4.            l+=o.offsetLeft+o.clientLeft; 
  5.            r+=o.offsetTop+o.clientTop; 
  6.            o=o.offsetParent; 
  7.        } 
  8.        return {left:l,top:r}; 
  9.    } 

6)).獲取滾動條高度

  1. // 滾動條的高度 
  2. function getScrollTop() { 
  3. var scrollTop = 0; 
  4. if (document.documentElement && document.documentElement.scrollTop) { 
  5.         scrollTop = document.documentElement.scrollTop; 
  6.     } 
  7. else if (document.body) { 
  8.         scrollTop = document.body.scrollTop; 
  9.     } 
  10. return scrollTop; 

7)).DOM節(jié)點操作

  1. function next(o){//獲取下一個兄弟節(jié)點 
  2.         if (o.nextElementSibling) { 
  3.             return o.nextElementSibling; 
  4.         } else
  5.             return o.nextSibling; 
  6.         }; 
  7.     } 
  8.     function pre(o){//獲取上一個兄弟節(jié)點 
  9.         if (o.previousElementSibling) { 
  10.             return o.previousElementSibling; 
  11.         } else
  12.             return o.previousSibling; 
  13.         }; 
  14.     } 
  15.     function first(o){//獲取第一個子節(jié)點 
  16.         if (o.firstElementChild) { 
  17.             return o.firstElementChild;//非IE678支持 
  18.         } else
  19.             return o.firstChild;//IE678支持 
  20.         }; 
  21.     } 
  22.     function last(o){//獲取最后一個子節(jié)點 
  23.         if (o.lastElementChild) { 
  24.             return o.lastElementChild;//非IE678支持 
  25.         } else
  26.             return o.lastChild;//IE678支持 
  27.         }; 
  28.     } 

8)).窗口的寬高

  1. document.body.scrollWidth||document.docuemntElement.scrollWidth;//整個網(wǎng)頁的寬 
  2. document.body.scrollHeight||document.docuemntElement.scrollHeight;//整個網(wǎng)頁的高 

9)).屏幕分辨率的寬高

  1. window.screen.height;//屏幕分辨率的高 
  2. window.screen.width;//屏幕分辨率的寬 

10)).坐標

  1. window.screenLeft;//x坐標 
  2. window.screenX;//X坐標 
  3. window.screenTop;//y坐標 
  4. window.screenY;//y坐標 

11)).屏幕可用工作區(qū)寬高

  1. window.screen.availHeight  
  2. window.screen.availWidth 

5).事件源獲取

  1. e.target || e.srcElement 

6).行外樣式

  1. funtion getStyle(obj,name){ 
  2.    if(obj.currentStyle){ 
  3.       //IE 
  4.     return obj.currentStyle[name]; 
  5.     }else
  6.     //Chrom,FF 
  7.    return getComputedStyle(obj,false)[name]; 
  8.       } 
  9.  } 

7).阻止事件冒泡函數(shù)封裝

  1. function pre(event){ 
  2.  
  3.            var e = event || window.event; 
  4.  
  5.            if(e.stopPropagation){   // 通用方式阻止冒泡行為 
  6.  
  7.                e.stopPropagation(); 
  8.  
  9.            }else{    //IE瀏覽器 
  10.  
  11.                event.cancelBubble = true
  12.  
  13.            } 

8).阻止瀏覽器默認行為(例如點擊右鍵出來菜單欄)

  1. function stop(event) { 
  2.  
  3.      var e = event || window.event; 
  4.  
  5.      if (e.preventDefault){ 
  6.  
  7.          e.preventDefault();   // 標準瀏覽器 
  8.  
  9.      }else
  10.  
  11.          e.returnValue = false; // IE瀏覽器 
  12.  
  13.      } 
  14.  

3.嚴格模式

  1. "use strict" 

4.判斷變量類型

  1. typeof  variable 
  2. instance  instanceof  object 
  3. instance.constructor== object 
  4. Object.prototype.toString.call(instance) 

5.下載服務(wù)器端文件

  1. <a href="http://somehost/somefile.zip" download="myfile.zip">Download file</a> 

總結(jié)

這篇文章主要介紹了JavaScript的進階操作命令!希望對大家的學(xué)習有所幫助。

 

責任編輯:姜華 來源: IT共享之家
相關(guān)推薦

2021-08-26 10:25:04

JavaScript進階操作 前端

2021-06-18 10:05:14

JavaScript數(shù)組遍歷

2021-07-20 10:26:12

JavaScriptasyncawait

2021-07-01 09:08:03

Python網(wǎng)頁開發(fā)Flask

2021-04-15 10:00:46

Java基礎(chǔ)ListJava開發(fā)

2024-08-02 15:04:14

JavaScript服務(wù)器

2024-06-25 12:52:40

JavaScript開發(fā)

2023-01-31 16:35:34

JavaScript測試框架

2010-04-19 17:39:50

Unix操作系統(tǒng)

2017-07-19 14:26:01

前端JavaScriptDOM

2021-08-03 10:01:37

JavaScript事件方法

2017-02-20 23:05:14

JavaScript

2011-08-15 10:45:11

iPhone開發(fā)delegate

2010-04-19 11:26:52

Unix操作系統(tǒng)

2021-07-26 05:20:47

JavaScript解構(gòu)賦值數(shù)組解構(gòu)

2024-07-17 11:35:31

JavaScript解構(gòu)賦值

2024-09-10 15:34:18

JavaScript解構(gòu)賦值

2024-06-18 10:28:46

2021-09-04 07:56:44

Pythonos模塊

2019-05-28 10:28:52

物聯(lián)網(wǎng)操作系統(tǒng)IOT
點贊
收藏

51CTO技術(shù)棧公眾號