前端雜記

本日內容:

(1)js、css在html中的位置

(2)獲取屏幕高寬

(3)this綁定(call, apply, bind)call, apply, bind 的區別

總結:本來想寫一寫閉包,但是看大佬們都好複雜,我準備再好好理解理解~~

(1)js、css在html中的位置?

  1. css文件放在head中
  2. js文件兩種情況

對於調用執行的,我們最好放在head裏,直接聲明或者引用外部文件(head)。

對於即時執行的,放在</body>前

例如:

<head>                                                           

  <link href="css/bootstrap.min.css" rel="stylesheet">

    //引入.css文件

  <script         src="http://cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js">

  </script>   //引入.js文件 

  <style>

//設計

  </style>   //html文件中,不推薦使用                                                          

</head>

<body>

 <div>…</div>

  <script>

//行代

  </script>

</body>                  

原因:

    css必須放在head裏。因爲瀏覽器解析html是從上到下的。如果css放到後面,會造成樣式按照瀏覽器標準先加載,最後忽然閃現樣式設計。

    Js如果是寫在html中,如果在head裏的話,會在頁面加載過程中執行js但這時候body還沒有解析,所以會返回空值。一般都會綁定一個監聽,當全部的html文檔解析完之後,再執行代碼:

 

   windows.onload=function(){

       //這裏放入執行代碼

   }

相反放在head中的JS代碼會在頁面加載完成之前就讀取,而放在body結束前的JS代碼,會在整個頁面加載完成之後讀取。

更推薦js、css寫在js文件中在head中引用,實現結構(html)、樣式(css)、行爲(js)分離,有利於維護。

 

(2)獲取屏幕高寬

網頁可見區域寬: document.body.clientWidth

網頁可見區域高: document.body.clientHeight

網頁可見區域寬: document.body.offsetWidth (包括邊線的寬)

網頁可見區域高: document.body.offsetHeight (包括邊線的高)

網頁正文全文寬: document.body.scrollWidth

網頁正文全文高: document.body.scrollHeight

網頁被捲去的高: document.body.scrollTop

網頁被捲去的左: document.body.scrollLeft

網頁正文部分上: window.screenTop

網頁正文部分左: window.screenLeft

屏幕分辨率的高: window.screen.height

屏幕分辨率的寬: window.screen.width

屏幕可用工作區高度: window.screen.availHeight

屏幕可用工作區寬度: window.screen.availWidth

 

(3)this綁定(call, apply, bind)call, apply, bind 的區別

call,apply,bind的相似

  1,都是用來改變函數this指向的

  2,第一個參數都是this要指向的對象

  3,都可以傳參複製代碼

call,apply,bind的不同之處

  1,call和apply都是對函數的直接調用

  2,bind返回的是一個函數,需要配合()進行調用

  3,call和bind的傳參使用‘,’分隔的,例如(item1,item2,item3...)

  4, apply的傳參使用數組[...arguments]複製代碼

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章