FF IE兼容性的修改小结


Posted in Javascript onSeptember 02, 2009

1.html 标签如果用 $(id) 或者 getElementById 这两个方法取值时,要给该标签加上 id 的属性, IE 、 FF 才兼容。如 $(mobile): 如果填 写 mobile 的 input 没有 id 属性在 FF 中会报这个变量 undefined ;
2. 取 form 表单的某个标签对象,如果要 IE 、 FF 兼容要把 formMain.item 改为 document.formName.item 。
如 form1.webUrl 改为 document.form1.webUrl 。
如果 form 作为一个参数传给某个函数,也要加上 "document.", 如 search(formMain) 改为 search(document.formMain)
3. 取 html 的自定义属性用 obj.attributeName 改为 obj.getAttribute("attributeName") 取则 IE 、 FF 兼容;非自定义属性仍可以按照
obj.attributeName 取。
如: <input type="text" name="memberCn" checkValue="notNull;eLength:25"> 这个标签中的 checkValue 属性为自定义属性,要用 obj.getAttribute("checkValue") 取, IE 、 FF 才兼容,其他属性如 type 属性则仍然可以用 obj.type 取
4.eval 函数,在 FF 和 IE 中使用不一样 , 在 FF 中用“ + ”连接成的一个可执行语句作为 eval 的参数时,不能执行而在 IE 中可以。遇到 要用 eval 时,尽量找别的方法代替。
如: eval("msg_" + textbox.name+ “ .className='wrong' ”) ;
"msg_" + textbox.name+ “ .className='wrong' ”这句话作为 eval 的参数在 IE 中能执行,在 FF 中执行时报 "msg_" + textbox.name 连接得到的空间名 undefined ,不能执行, 要修改为:
document.getElementById("msg_" + textbox.name).className='wrong';
5. 样式中的 display 的属性 block ,在 FF 中如果遇到异常可以变为空;如 item.style.display="block" 可以改为 item.style.display=""
如 $("divType4").style.display="block";
改为 $("divType4").style.display="";
6. 再添加一个: label 在 FF 中好像跟 IE 不一样:比如说以下代码:
<td colspan = "3" class = "line_l"> 成人 <label>
<input name = "amount" type = "text" value = "${amount} " size = "6" maxlength = "10" eleName = "[ 成人预订人数 ]" checkValue = "notNull;eLength:10;isLong" />
人        儿童
<input name = "kidAmount" type = "text" value = "${kidAmount} " size = "6" maxlength = "10" eleName = "[ 儿童预订人数 ]" checkValue = "notNull;eLength:10;isLong" />
人 <span class = "line_red"> * </ span></label>
</ td>
这样写在 FF 中输入时儿童的光标总是跑到成人那里去, IE 中不会,而这样写就不会:
<td width = "25%"> 成人 <label>
<input name = "amount" type = "text" value = "${amount} " size = "6" maxlength = "10" eleName = "[ 成人预订人数 ]" checkValue = "notNull;eLength:10;isLong" /> 人 </ label></ td>
<td width = "75%"> 儿童 <label><input name = "kidAmount" type = "text" value = "${kidAmount} " size = "6" maxlength = "10" eleName = "[ 儿童预订人数 ]" checkValue = "notNull;eLength:10;isLong" /> 人 </ label></ td>
注意 label 的位置,一个是在两个 input 的外面,一个是在一个 input 的外面,
难道 label 标签在 FF 中不能包含两个输入的标签???
还有一个地方:代码如下:
<td><label>
<select name = "provinceId" id = "provinceId" onchange = "iniCity(document.frmMain.provinceId,document.frmMain.cityId,document.frmMain.subCity);" eleName = "[ 所在省份 ]" checkValue = "IS_LONG">
</ select> 省
<select name = "cityId" id = "cityId" onchange = "iniSubCity(document.frmMain.provinceId,document.frmMain.cityId,document.frmMain.subCity);" eleName = "[ 所在城市 ]" checkValue = "IS_LONG"></ select> 市
<select name = "subCity" id = "subCity" eleName = "[ 所在县区 ]" checkValue = "IS_LONG"></ select>
<span class = "red"> * </ span></label></ td>
这个代码时第二个,第三个 select 的光标固定不住,应该是跑到了第一个 select 上去了,但因为是 select 所以看不到,但是上面的 input 能看到。同样这个问题在 IE 中正常。我觉得这个也说明了我上面的说法。

Javascript 相关文章推荐
jQuery 选择器、DOM操作、事件、动画
Nov 25 Javascript
jQuery左右滚动支持图片放大缩略图图片轮播代码分享
Aug 26 Javascript
基于RequireJS和JQuery的模块化编程日常问题解析
Apr 14 Javascript
JS模仿手机端九宫格登录功能实现代码
Apr 28 Javascript
AngularJS ng-bind-template 指令详解
Jul 30 Javascript
jquery动态创建div与input的实例代码
Oct 12 Javascript
javascript正则表达式模糊匹配IP地址功能示例
Jan 06 Javascript
Vue-cli-webpack搭建斗鱼直播步骤详解
Nov 17 Javascript
jQuery实现下拉菜单动态添加数据点击滑出收起其他功能
Jun 14 jQuery
Angular中sweetalert弹框的基本使用教程
Jul 22 Javascript
layer设置maxWidth及maxHeight解决方案
Jul 26 Javascript
微信小程序 接入腾讯地图的两种写法
Jan 12 Javascript
js 获取浏览器高度和宽度值(多浏览器)
Sep 02 #Javascript
获取URL地址中的文件名和参数的javascript代码
Sep 02 #Javascript
Javascript 判断函数类型完美解决方案
Sep 02 #Javascript
javascript 控制 html元素 显示/隐藏实现代码
Sep 01 #Javascript
jsTree树控件(基于jQuery, 超强悍)[推荐]
Sep 01 #Javascript
JavaScript 继承详解 第一篇
Aug 30 #Javascript
JavaScript 应用技巧集合[推荐]
Aug 30 #Javascript
You might like
php版淘宝网查询商品接口代码示例
2014/06/17 PHP
php实现根据IP地址获取其所在省市的方法
2015/04/30 PHP
PHP ajax 异步执行不等待执行结果的处理方法
2015/05/27 PHP
PHP实现表单提交数据的验证处理功能【防SQL注入和XSS攻击等】
2017/07/21 PHP
JS日历 推荐
2006/12/03 Javascript
js实现的捐赠管理完整实例
2015/01/20 Javascript
JavaScript获得页面base标签中url的方法
2015/04/03 Javascript
JavaScript实现多个重叠层点击切换效果的方法
2015/04/24 Javascript
浅谈js函数的多种定义方法与区别
2016/11/29 Javascript
JQuery form表单提交前验证单选框是否选中、删除记录时验证经验总结(整理)
2017/06/09 jQuery
Vue组件的使用教程详解
2018/01/05 Javascript
zepto.js 实时监听输入框的方法
2018/12/04 Javascript
详解如何更好的使用module vuex
2019/03/27 Javascript
jQuery实现的点击显示隐藏下拉菜单功能完整示例
2019/05/17 jQuery
JS定义函数的几种常用方法小结
2019/05/23 Javascript
layui加载数据显示loading加载完成loading消失的实例代码
2019/09/23 Javascript
纯js实现无缝滚动功能代码实例
2020/02/21 Javascript
JS apply用法总结和使用场景实例分析
2020/03/14 Javascript
vue Element左侧无限级菜单实现
2020/06/10 Javascript
vant 时间选择器--开始时间和结束时间实例
2020/11/04 Javascript
Python遍历指定文件及文件夹的方法
2015/05/09 Python
Python脚本实现虾米网签到功能
2016/04/12 Python
python语言使用技巧分享
2016/05/31 Python
Python中enumerate函数代码解析
2017/10/31 Python
Python实现自动上京东抢手机
2018/02/06 Python
python中for循环输出列表索引与对应的值方法
2018/11/07 Python
Python3最长回文子串算法示例
2019/03/04 Python
twilio python自动拨打电话,播放自定义mp3音频的方法
2019/08/08 Python
Wojas罗马尼亚网站:波兰皮鞋品牌
2018/11/01 全球购物
Tiqets英国:智能手机上的文化和娱乐门票
2019/07/10 全球购物
美国名牌香水折扣网站:Hottperfume
2021/02/10 全球购物
先进人物事迹材料
2014/12/29 职场文书
汇报材料怎么写
2014/12/30 职场文书
外贸采购员岗位职责
2015/04/03 职场文书
公司催款律师函
2015/05/27 职场文书
3050和2060哪个好 性能差多少 差距有多大 谁更有性价比
2022/06/17 数码科技