JS求教: 获取body对象,这样写document.body对IE 6、7、8下的兼容性如何?

 我来答
yugi111
推荐于2018-03-05 · TA获得超过8.1万个赞
知道大有可为答主
回答量:5.1万
采纳率:70%
帮助的人:1.3亿
展开全部
在 IE 下 用 document.all[0] 获取当前document对象 ! 
然后就是body对象 要看你的body标签在你文档的索引位置,然后调用它
例如索引位置是4,从0开始。
document.all[4]
切记!!!

更简单的方法 document.getElementsByTagName('body')[0]

当然你也可以选择递归 (全能方法)

var TM = {
arr : [],
getNodes : function(tagNames, models) { 
var m = models ? models : this.model;
var c = null;
var arr = this.arr;  // 数组传递也是引用传递
if(c = m.children){ 
for(var i = 0; i < c.length; i++) { 
var nc = c[i].tagName.toLowerCase(); 
if(nc == tagNames){  
arr.push(c[i]); // 引用被改变,原来的也改变
}
else{
this.getNodes(tagNames, c[i]);
}
}

return arr;
}
};

引用  TM.getNodes('body',document.all[0])[0];
匿名用户
2017-07-14
展开全部
特意测试了下,都是兼容的,输出的都是一个对象,你自己也可以试试啊!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lifeng4007
2012-11-05 · 超过18用户采纳过TA的回答
知道答主
回答量:75
采纳率:0%
帮助的人:30.3万
展开全部
用jquery,$(body),jquery的兼容性是很好的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wyw5257
2012-11-10 · TA获得超过150个赞
知道小有建树答主
回答量:209
采纳率:0%
帮助的人:196万
展开全部
用jquery
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式