今天有一個zblog模板客戶反饋問題,手機(jī)端菜單在蘋果手機(jī)上下拉失效,安卓機(jī)子上正常,看了一下,使用的是:hover的方法,沒有使用任何JS。
我自己也沒有蘋果機(jī)子可測試,最終百度中找到iphone無法兼容:hover的原因!
方法一:
a:hover 設(shè)置的樣式在iOS系統(tǒng)的瀏覽器內(nèi)顯示不出來,看來在iOS系統(tǒng)的移動設(shè)備中,需要在按鈕元素或body/html上綁定一個touchstart事件才能激活:active狀態(tài)。
代碼如下:
document.body.addEventListener('touchstart',function(){});
或者給body添加ontouchstart
<body ontouchstart>
方法二:
既然iphone不支持hover,用js解決,寫一個單獨(dú)的類,比如.active
.active{ background-color: #eee;}123123
/***************** 在鼠標(biāo)進(jìn)入li的時候 1. 去除其它`li`的 `.active` 2. 給當(dāng)前`li`添加類`.active` ********************/ $(function(){ $('ul li').mouseover(function(){ $('ul li').removeClass('active'); $(this).addClass('active') }) })