再谈ie和firefox下的document.all属性


Posted in Javascript onOctober 21, 2009

例如下面的代码:

<html> 
<body> 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
if(document.all) 
alert("this is a IE"); 
else 
alert("this is a Mozilla"); 
//--> 
</SCRIPT> 
</body> 
</html>

在IE浏览器会输出 “this is a IE”;
而在firefox浏览器中会输出"this is a Mozilla"。

但这样是不能直接就认为在 firefox中 是不支持 document.all属性方法的。

下面一段代码,在IE和firefox浏览器下都运行正常

<html> 
<body> 
<input type="text" id="txt" value="ddd"/> 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var v = document.all.txt.value; 
alert(v); 
//--> 
</SCRIPT> 
</body> 
</html>

这是因为较新FF对all做了特殊处理,JS在招行过程中检测到只有单独的all属性是,就会返回JSVAL_VOID(也就是false)值;
当JS在招行过程中检测到形如'if (o.p)...' or '(o.p) ?...:...', 则回返回一个HTMLCOLLECTION对像.
而在GOOGLE浏览器中,则对all有双重分处,既是一个COLLECTION又是一个JS VOID(false)值.
Javascript 相关文章推荐
js 可拖动列表实现代码
Dec 13 Javascript
浅谈javascript中的作用域
Apr 07 Javascript
JavaScript Ajax Json实现上下级下拉框联动效果实例代码
Nov 23 Javascript
解析JavaScript中的不可见数据类型
Dec 02 Javascript
jQuery插件cxSelect多级联动下拉菜单实例解析
Jun 24 Javascript
Angularjs在初始化未完毕时出现闪烁问题的解决方法分析
Aug 05 Javascript
bootstrap模态框垂直居中效果
Dec 03 Javascript
移动端效果之Swiper详解
Oct 09 Javascript
在ES5与ES6环境下处理函数默认参数的实现方法
May 13 Javascript
Vue.js 中的 v-model 指令及绑定表单元素的方法
Dec 03 Javascript
JS实现数组删除指定元素功能示例
Jun 05 Javascript
vue+element-ui表格封装tag标签使用插槽
Jun 18 Javascript
javascript void(0)的妙用
Oct 21 #Javascript
extjs 学习笔记 四 带分页的grid
Oct 20 #Javascript
Jquery Ajax.ashx 高效分页实现代码
Oct 20 #Javascript
fireworks菜单生成器mm_menu.js在 IE 7.0 显示问题的解决方法
Oct 20 #Javascript
Javascript remove 自定义数组删除方法
Oct 20 #Javascript
JavaScript 事件记录使用说明
Oct 20 #Javascript
7个Javascript地图脚本整理
Oct 20 #Javascript
You might like
PHP里的$_GET数组介绍
2019/03/22 PHP
TP5框架实现上传多张图片的方法分析
2020/03/29 PHP
浅谈php常用的7大框架的优缺点
2020/07/20 PHP
js 鼠标拖动对象 可让任何div实现拖动效果
2009/11/09 Javascript
原生js实现查找/添加/删除/指定元素的class
2013/04/12 Javascript
jquery 获取dom固定元素 添加样式的简单实例
2014/02/04 Javascript
在JavaScript中重写jQuery对象的方法实例教程
2014/08/25 Javascript
详解JS面向对象编程
2016/01/24 Javascript
JavaScript组件开发之输入框加候选框
2017/03/10 Javascript
jQuery用户头像裁剪插件cropbox.js使用详解
2017/06/07 jQuery
微信小程序 检查接口状态实例详解
2017/06/23 Javascript
vue-baidu-map 进入页面自动定位的解决方案(推荐)
2018/04/28 Javascript
vue中使用cookies和crypto-js实现记住密码和加密的方法
2018/10/18 Javascript
微信小程序之事件交互操作实例分析
2018/12/03 Javascript
在vue使用clipboard.js进行一键复制文本的实现示例
2019/01/15 Javascript
Django+vue跨域问题解决的详细步骤
2019/01/20 Javascript
深入理解react 组件类型及使用场景
2019/03/07 Javascript
vue中多路由表头吸顶实现的几种布局方式
2019/04/12 Javascript
JavaScript 实现自己的安卓手机自动化工具脚本(推荐)
2020/05/13 Javascript
[08:40]Navi Vs Newbee
2018/06/07 DOTA
Python获取指定字符前面的所有字符方法
2018/05/02 Python
python微信撤回监测代码
2019/04/29 Python
Python3.5字符串常用操作实例详解
2019/05/01 Python
Python中使用__new__实现单例模式并解析
2019/06/25 Python
Flask框架路由和视图用法实例分析
2019/11/07 Python
python中sys模块是做什么用的
2020/08/16 Python
使用python将微信image下.dat文件解密为.png的方法
2020/11/30 Python
python音频处理的示例详解
2020/12/23 Python
CSS3的column-fill属性对齐列内容高度的用法详解
2016/07/01 HTML / CSS
CSS3打造百度贴吧的3D翻牌效果示例
2017/01/04 HTML / CSS
CSS3实现酷炫的3D旋转透视效果
2019/11/21 HTML / CSS
《中国梦我的梦》大学生演讲稿
2014/08/20 职场文书
高中课前三分钟演讲稿
2014/09/13 职场文书
重阳节简报
2015/07/20 职场文书
redis缓存存储Session原理机制
2021/11/20 Redis
Spring Boot 实现 WebSocket
2022/04/30 Java/Android