本文都是我目前學到的一些比較零碎的知識點,也是相對偏一點的知識,這是第二篇。先後可能沒有太大的相關性,須要的朋友能夠過來參考下,喜歡的能夠點個贊,但願對你們有所幫助。本文的受衆是剛學前端,大手子能夠跳過。javascript
$(function() {
// 須要執行的js函數內容
});複製代碼
背景:碰到一個JQ很複雜的函數,上面簡化了的總體格式,這跟自執行函數又不太同樣,以前沒見過這種寫法,查了蠻久以後才找到這方面的內容,在這裏分享一波。css
當 DOM(文檔對象模型) 已經加載,而且頁面(包括圖像)已經徹底呈現時,會發生 ready 事件。
ready() 函數規定當 ready 事件發生時執行的代碼。
ready() 函數僅能用於當前文檔,所以無需選擇器。html
容許使用如下三種語法:前端
語法 1java
$(document).ready(function)複製代碼
語法 2jquery
$().ready(function)複製代碼
語法 3git
$(function)複製代碼
js貌似也有一個這類型的方法,js方法以下: github
window.onload = function() {
$("table tr:nth-child(even)").addClass("even"); //這個是jquery代碼
}; 數組
當使用js方法的時候,會在整個頁面的document所有加載完成之後執行。不幸的這種方式不只要求頁面的DOM tree所有加載完成,並且要求全部的外部圖片和資源所有加載完成。更不幸的是,如果外部資源加載時間過長,例如圖片須要很長時間來加載,那麼這個js效果就會讓用戶感受失效了,因此當這個情景下,使用這種方法的用戶體驗是很是差的。 瀏覽器
使用jquery方法:就僅僅只須要加載全部的DOM結構,在瀏覽器把全部的HTML放入DOM tree以前就執行js效果,包括在加載外部圖片和資源以前。
背景:寫代碼的時候,由於以前作css習慣性的用class來命名,而後直接獲取了class,tagname類名節點,賦值的時候一直出錯,查了很久最後,知道了class和tag類型的節點,由於不惟一性,因此獲取節點的時候,返回的是一個對象數組。
ps:賦值出錯是由於,數組對象賦值時不能直接a=b,要a[index]=b,由於這裏獲取class,tagName的dom節點,瀏覽器不知道class和tag在html裏面有多少個(class、tag能夠有多個),因此默認生成的是一個對象數組,因此當賦值的時候,要有相應的下標,不然就會出錯。
getElementsByClassName() 方法返回文檔中全部指定類名的元素集合,做爲 NodeList 對象。
NodeList 對象表明一個有順序的節點列表。
咱們可經過節點列表中的節點索引號來訪問列表中的節點(索引號由0開始)。
由於id的惟一性質(同一個html裏面只能取一個相同的id),沒特殊狀況最好用id命名,而且用id獲取dom,這樣不容易出錯,就算寫css習慣性的採用class,也能夠再標籤裏面再加一段id="名字"。
背景:
這種狀況是做用域的問題,上面定義的變量是全局變量,在雖然是一個閉包,可是應該可使用全局的變量,回一級一級往上找這個變量。這裏不太清楚爲何會沒有找到?
然而,雖然不太清楚中間發生了什麼,可是最後問題仍是成功的解決了。
JavaScript中的任何一個全局函數或變量都是window的屬性,能夠是使用以下方法獲取dom,而且操做dom。
栗子1:
<script type="text/javascript">
var name="這裏是測試";
document.write(window.name);//輸出name的內容
</script>複製代碼
實際應用以下:
當你層次嵌套多層以後,取不到變量或對象的時候,就能夠使用window全局對象的方法,來傳遞參數,使其成功鏈接。
找不到關於這方面的比較詳細的資料,大夥兒就記住這個方法就行了。
如圖,佔位符和換行符在字符串中正常生效,不會變成字符串。其餘的我不知道,反正這兩個親測可行,我的以爲蠻神奇,一直覺得會變成字符串。
評論區還有一種說法,意思是說在字符串中使用特殊符號,在輸出的時候能夠起效果,然而將特殊符號做爲一個值來計算,或者是當作一個變量來使用的話,這種狀況下就會出錯!so,咱們仍是不要用特殊符號亂搞事情,輸出的時候使用便可,並且好像應用場景也就輸出的時候,應該沒有什麼其餘場景應用的到了吧?
你們能夠看看:
先記這些,之後學到了新的東西,累積起來,再發一些,這些都是我目前學到的一些比較零碎的知識點,也是相對偏一點的知識,再次強調一下是寫給小白看的,讓他們之後少踩些坑,小白們也多點參考資料。
最後:但願看完的朋友點個喜歡,也能夠關注一下我,如今這階段基本上每月都不會少於十五篇文章(看到乾貨我也會進行分享)。寫的很差之處,歡迎指點。碼字不易,感謝支持!
ps:目前待業,座標北京,求推薦工做。而後但願我寫哪方面的文章能夠在底下評論,或者是私信我,雖然寫的很差,但我就當這是記錄本身成長的一種方式咯。(前提是我會了,若是不會我也會記下來,等會了的時候再更出來。)
掘金我的主頁 ,簡書主頁連接,csdn博客主頁連接 ,github 。
以上。