碰到一個需求是做個輪播圖帶自動播放的,UED那邊給輪播的底部加了陰影漸變,如下紅色區域。
這樣會導致一個問題,手觸摸在紅色區域會被這層View擋住,導致不能手動滑動切換。
原先采取過的方法是在對應的觸摸事件 執行return false ,但是這個局限於輪播圖得是紅色區域的父組件。不然觸摸無法冒泡上去。
發現有個好用的屬性,以前從來沒用過。pointerEvents
看看官網的介紹:
用於控制當前視圖是否可以作為觸控事件的目標。
- auto:視圖可以作為觸控事件的目標。
- none:視圖不能作為觸控事件的目標。
- box-none:視圖自身不能作為觸控事件的目標,但其子視圖可以
<View pointerEvents = 'none'></View>
這樣就能完美的解決沖突了,直接不用管啥層級問題,冒泡捕獲啥的都忽略。