1.頁面滾動條不顯示但可以通過鼠標(biāo)滾動:
谷歌:
元素名::-webkit-scrollbar{
display:none;
}
整個頁面:
body::-webkit-scrollbar{ ? ?/* 谷歌滾動條隱藏 */
display:none;
}
html{
-ms-overflow-style:none; ? ?/*隱藏滾動條,當(dāng)IE下溢出,仍然可以滾動*/
scrollbar-width: none; ? ?/*火狐下隱藏滾動條*/
}
1.AMD、CMD、CommonJs、ES6的對比
簡述:
1. 都是用于在模塊化定義中使用的。
2. AMD、CMD、CommonJs是ES5中提供的模塊化編程的方案。
3. import/export是ES6中定義新增的。
細分:
(1)AMD是RequireJS在推廣過程中對模塊定義的規(guī)范化產(chǎn)出,它是一個概念,RequireJS是對這個概念的實現(xiàn),就好比JavaScript語言是對ECMAScript規(guī)范的實現(xiàn)。AMD是一個組織,RequireJS是在這個組織下自定義的一套腳本語言。
RequireJS:是一個AMD框架,可以異步加載JS文件,按照模塊加載方法,通過define()函數(shù)定義,第一個參數(shù)是一個數(shù)組,里面定義一些需要依賴的包,第二個參數(shù)是一個回調(diào)函數(shù),通過變量來引用模塊里面的方法,最后通過return來輸出 是一個依賴前置、異步定義的AMD框架(在參數(shù)里面引入js文件),在定義的同時如果需要用到別的模塊,在最前面定義好即在參數(shù)數(shù)組里面進行引入,在回調(diào)里面加載。
CMD-同步模塊定義:
(2)CMD---是SeaJS在推廣過程中對模塊定義的規(guī)范化產(chǎn)出,是一個同步模塊定義,是SeaJS的一個標(biāo)準(zhǔn),SeaJS是CMD概念的一個實現(xiàn),SeaJS是淘寶團隊提供的一個模塊開發(fā)的js框架. 通過define()定義,沒有依賴前置,通過require加載jQuery插件,CMD是依賴就近,在什么地方使用到插件就在什么地方require該插件,即用即返,這是一個同步的概念
CommonJS-module.exports定義:
(3)CommonJS規(guī)范--- CommonJS規(guī)范加載模塊是同步的,只有加載完成,才能執(zhí)行后面的操作。AMD規(guī)范則是非同步加載模塊,允許指定回調(diào)函數(shù)。是通過module.exports定義的,在前端瀏覽器里面并不支持module.exports,通過node.js后端使用的。Nodejs端是使用CommonJS規(guī)范的,前端瀏覽器一般使用AMD、CMD、ES6等定義模塊化開發(fā)的所有代碼都運行在模塊作用域,不會污染全局作用域。模塊可以多次加載,但是只會在第一次加載時運行一次,然后運行結(jié)果就被緩存了,以后再加載,就直接讀取緩存結(jié)果。要想讓模塊再次運行,必須清除緩存。模塊加載的順序,按照其在代碼中出現(xiàn)的順序。 輸出方式有2種:默認(rèn)輸出---module.export 和帶有名字的輸出---exports.name
ES6特性-模塊化:
(4)ES6特性,模塊化---export/import對模塊進行導(dǎo)出導(dǎo)入的。
2.DOM怎樣添加、移除、移動、復(fù)制、創(chuàng)建和查找節(jié)點
creatElement()創(chuàng)建一個具體元素
creatElement()創(chuàng)建一個具體元素
appendChild()添加
removeChild()移除
rependChild()替換
insertBefore()插入
geiElementById()查找
3.ES6去重方法(不可以使用循環(huán)遍歷)
vararr = ["1","2","3","1","a","a","c","c"];
varset=newSet(arr)?;
vararray?=Array.from(set);
console.log(array);
暫時就這些咯~~~