應(yīng)用場(chǎng)景:商品購(gòu)物頁(yè)面黔宛,在選擇商品規(guī)格的時(shí)候近刘,會(huì)根據(jù)上一個(gè)規(guī)格去判定其他規(guī)格是否還存在并可以組合到一起。
如下:
可以看到臀晃,當(dāng)點(diǎn)擊藍(lán)色規(guī)格的時(shí)候觉渴,尺碼中的M、X被禁用了徽惋,這里當(dāng)然不是值改變了樣式案淋,而是真的不可以點(diǎn)了。估計(jì)有人看到這就會(huì)說使用event.preventDefault();
來阻止元素的默認(rèn)事件啊险绘。那樣也是可以的踢京,但不好用,具體可以自己試試去體會(huì)一下宦棺,下面說一種新的方法
CSS3 pointer-events :none
顧名思意瓣距,就是鼠標(biāo)事件拜拜的意思。元素應(yīng)用了該CSS屬性代咸,鏈接啊蹈丸,點(diǎn)擊啊什么的都變成了“浮云”。
需要注意的是:
1.pointer-events:none可以直接讓鼠標(biāo)事件醬油化呐芥,但是逻杖,其并不能讓鍵盤事件變成打醬油的。因?yàn)閜ointer-events這里是“pointer”思瘟,而不是“any”或是“every”之類弧腥。
2.pointer-events:none的“幻影”特性,對(duì)半透明覆蓋元素應(yīng)用pointer-events:none聲明使其可以鼠標(biāo)穿透潮太,也就是說我們可以使用這個(gè)特性來建立陰影層效果,這個(gè)陰影層使用定位必然在普通文本流之上虾攻,所以就導(dǎo)致沒辦法點(diǎn)擊到陰影層下面的東西铡买,通過設(shè)置pointer-events:none可以使陰影層變得可以穿透。