亚洲一区亚洲二区亚洲三区,国产成人高清在线,久久久精品成人免费看,999久久久免费精品国产牛牛,青草视频在线观看完整版,狠狠夜色午夜久久综合热91,日韩精品视频在线免费观看

簡易的全屏透明遮罩(lightBox) -電腦資料

電腦資料 時間:2019-01-01 我要投稿
【www.ishadingyu.com - 電腦資料】

前不久有個正要畢業(yè)的網(wǎng)友給我發(fā)郵件,他畢業(yè)設(shè)計需要實現(xiàn)鎖屏的效果,但是他沒有能看懂我之前發(fā)布的對話框源碼,他問能不能把鎖屏相關(guān)代碼說明下,我當時說過兩天就發(fā),

簡易的全屏透明遮罩(lightBox)

。由于最近比較忙,我現(xiàn)在才想起來,但愿現(xiàn)在此文還來得及。

步入正題:

現(xiàn)在全屏的半透明遮罩層在web2.0網(wǎng)站應(yīng)用非常廣泛了,絕大多數(shù)遮罩是通過計算頁面大小,然后覆蓋一個與頁面同等大小的層實現(xiàn),如騰訊qzone, wordpress后臺。這種方式本來無可非議,但是在頁面很長的時候在IE8下會失效(國外資料的解釋是與機器顯卡相關(guān)),有些完美情節(jié)的同學(xué)遇到這個問題后就抓破了頭,無奈之下甚至想讓IE8強制使用IE7的方式解析他的作品。其實我們有一個更好的方法,咱們用CSS去解決它!

還記得“position:fixed”嗎?它是css2的一個新增的屬性,他可以讓一個元素靜止在頁面上,拖動滾動條也不會動,如Qzone頂部固定的導(dǎo)航欄就是這樣實現(xiàn)的。同樣我們也可以用一個100%高寬的層覆蓋瀏覽器視口,這樣就可以實現(xiàn)全屏遮罩了,不用再計算頁面的大小,調(diào)整瀏覽器大小的時候也不要去動態(tài)修改尺寸了。

以下為引用的內(nèi)容:



簡易的全屏透明遮罩(lightBox) -電腦資料





















































































可是有一個頭疼的問題,IE6不支持“position:fixed”,咱們只能通過js動態(tài)的修改它的TOP值以模擬靜止定位,拖動滾動條的時候遮罩成肯定會抖動,因為每改變一次IE會重新渲染一次。但是微軟卻給我們提供了一個非常有趣的特性,如果給html或者body標簽設(shè)置一個靜止定位的背景圖片,層在拖動滾動條的時候就不會抖動了,幾乎完美的模擬了“position:fixed”。我在實際項目中發(fā)現(xiàn)這個特性他還能觸發(fā)其他的特異功能,以后再說明。

為了省事,咱們針對IE6用萬惡expression在CSS中寫點腳本,拖動滾動條的時候重新定位我們的遮罩層。傳說中expression是非常耗性能的,可是咱們的expression幾乎沒有損耗,有興趣的同學(xué)可以深入研究下expression。

以下為引用的內(nèi)容:



簡易的全屏透明遮罩(lightBox) -電腦資料





















































































好了,兼容IE6這個大頭娃娃后,咱們的鎖屏遮罩已經(jīng)通殺主流瀏覽器了,但是呢用js寫效果的同學(xué)們總是非常的 ,總想折騰點什么來,咱們就再添加一點腳本,讓鎖屏的時候后可以中斷用戶操作,把滾動條、滾輪、tab鍵、全選、刷新、右鍵統(tǒng)統(tǒng)禁止掉,模擬真正的‘鎖屏’:

以下為引用的內(nèi)容:



簡易的全屏透明遮罩(lightBox) -電腦資料






















































































最新文章