在開發移動端頁面時,儘可能少使用固定定位佈局,由於會在ios系統上引起一系列不可控的情況,好比
1.使用fixed定位的元素會隨着頁面的滑動而抖動;
2.頁面滑動失去慣性;
3.可能在滑動過程當中引起瞬間的頁面錯亂,中止後恢復正常;
在須要使用fixed定位的時候,就與主體頁面分離,保證層級關係,不影響主體頁面。
tips:-webkit-overflow-scroll:touch 屬性也不能與fixed定位一塊兒使用javascript
ios系統下,javascript的日期對象Date( )函數不能識別短橫槓:「 - 」 ,只能使用斜槓:「 / 」java
// 如下形式 ios能夠識別 let date = new Date("2018/09/14"); // 如下形式 ios不能識別 let date = new Date("2018-09-14");
最近維護老項目,使用jquery的on( )寫事件委託,安卓下能夠點擊,ios下不可點擊。jquery
// 改方法下ios下點擊無效 $("body").on("click", "#first-login .first-login-btn", function () { $("#first-login").hide(); }) //改爲touchend事件能夠點擊 $("body").on("touchend", "#first-login .first-login-btn", function () { $("#first-login").hide(); })
回頭查詢一下,當使用事件委託給【目標元素】添加 click 事件時,若是【代理元素】是 document或body,而且【目標元素】是默認不可點擊的(如 div, span 等),此時click事件會失效。若是【目標元素】是可點擊的(好比 button、a 標籤),此時click事件仍是有效的。
解決方案能夠替換click事件,或者給【目標元素】設置cursor: pointer;ios