JS兼容性问题列表

记录平时碰见的兼容性问题,有更好的解决办法但愿各位提出,会随着开发遇到问题而更新,标记为黄色的为未解决和猜想答案php

提出时间 问题描述 解决方案
2014/10/22 submit按钮阻止了默认事件不能使用form.submit();发送请求, 猜想是阻止默认后,form.submit();也是属于默认事件(不肯定)因此没法发送 解决办法仍是不使用先禁止默认事件再发送,而让事件判断能够再发送
2014/10/22 btn.onsubmit()触发问题 submit事件必须绑定是表单,对于按钮是使用click事件,绑定submit事件比较合理,却由于html5的required特性会对验证有影响仍是抛弃这种写法,
2014/10/23 使用submit事件验证表单的时候,对于required的元素是先是浏览器检测再进行发送请求的元素进行js检验,主要是radio和checkbox出现问题 点击按钮进行判断,发送请求,不要让浏览器先对required进行检测,主要是radio和checkbox出现问题,其他可使用submit事件进行
2014/10/23 对于string.replace(/(a)+/g,function(all,key){})all和key分别是什么 测试得出all是当前匹配的同一个字符仍是字符分组不肯定,key能够确定是当前匹配的字符,大概是经过增减字符串数组的长度对其常常格式转换
2014/10/24 artTemplate插入验证码失效(由于存在同个id致使失效),php插入验证码代码后会自动生成html和js,这个须要使用div隐藏, 把id操做替换掉,把html的元素id替换掉,click事件重写,把替换的图片地址传递过去(复制节点的操做还得要从新把id替换,繁琐),假如不是太注重这严谨的结构能够无视
2014/10/29 没法修改ie6-8的input的type实现placeholder ie6-8的type是只读模式,因此没法修改实现placeholder
2014/11/3 resize后的document.documentElement.scrollWidth值不变并且是最大值  
2014/11/6 required输入表单,验证表单会强制验证input某个元素 关闭html5的验证
第一种方法是利用form元素的novalidate属性,它能够关闭整个表单验证先把表单的该属性设置为true,关闭表单验证
第二种方法是利用input元素或submit元素的formnovalidate属性,利用input元素的formnovalidate属性可让表单验证对单个input元素失效,至关于利用了form元素的novalidate属性,整个表单验证都将关闭。
2014/11/10 hover和mouseover和mouseout的实现不同 jQuery实际是使用是mouseleave和mouseenter,区别在于mouseleave和mouseenter子元素的时候不会从新触发事件,而mouseover和mouseout会.主要在事件间加入了判断
vart=e.relatedTarget;
if(!t||(!(t.compareDocumentPosition(this)&8)&& t!==this)){
//t有多是不存在的,target在很边缘的状况下,从浏览器外部直接移入target的状况.alert('mouseenter') }
http://www.cnblogs.com/_franky/archive/2010/05/01/1725624.html
2014/10/11 复选框没法显示 根据W3C的表单规范,在checked属性是一个布尔属性,这意味着只要该attribute存在,即便它没有值,或是一个空字符串,该属性对应的property就是true,不使用attr方法使用pop方法
2014/11/27 cookiewebkit测试cookie有问题 webkit不支持本地cookie
2014/12/20 路径 默认ie不支持播放本地文件出于安全因素,现代浏览器可使用blog路径读取或者html5的FileReader()对象实现
2015/3/19 requireJS exports:aa.a报错a未找到 exports模块输出接口一个方法名称,*.*会执行对应下的方法会报错

转载请保留原文地址,谢谢html

相关文章
相关标签/搜索