blog
blog copied to clipboard
记录一些烦人的浏览器兼容性问题
如果你也遇到了相同问题, 希望能帮助你快速修复问题
安卓UC浏览器手指滑动会触发前进/后退和页面缩放
在 touch 系列事件中, 可以通过 event.preventDefault()
阻止浏览器默认行为
在安卓UC中, 仅在 touchmove
事件中调用 preventDefault() 并不管用, 还需要在 touchstart
和 touchend
事件中也调用 preventDefault()
然后就能禁用掉了
但是!!! 要注意, 如果在 touchend
中调用了 preventDefault(), 就不会触发 click
事件了!!!
IE浏览器不支持 ChildNode.remove
MDN上提供了该方法的 polyfill, 引入即可
https://developer.mozilla.org/en-US/docs/Web/API/ChildNode/remove#Polyfill
IE浏览器不支持 SVGElement.outerHTML
如果该
const outerHTML = $svg.parentNode.innerHTML;
如果有兄弟节点
const $div = document.createElement('div');
$div.appendChild($svg.cloneNode());
const otherHTML = $div.innerHTML;
IE浏览器, 派生类不能访问基类静态属性
我不确定 ECMAScript 规范中是否有对该行为的定义, 在别的浏览器中是可以的
修复方法: 改为从基类读取静态属性