IE8中使用很好,但在火狐浏览器中这段代码为什么不能用?

一下这段代码是进行TreeView选中某节点后,就能选中其下面的所有子节点的javascript代码。这段代码在IE中使用是没有任何问题的,但在火狐中使用就不能选中打钩节... 一下这段代码是进行TreeView选中某节点后,就能选中其下面的所有子节点的javascript代码。这段代码在IE中使用是没有任何问题的,但在火狐中使用就不能选中打钩节点的子节点。请高人指教:

//选择树形结构的检测
function selectCheck(obj) {
var els = event.srcElement; //获取当前事件的对象
if (els.type == 'checkbox') {
var divId = els.id.replace('CheckBox', 'Nodes'); //获取子节点的层Id
var divObj = document.getElementById(divId); //获取层对象
if (divObj == null) return;
var checkBoxs = divObj.getElementsByTagName('input'); //获取层下所有input 控件
for (var i = 0; i < checkBoxs.length; i++) {
if (checkBoxs[i].type == 'checkbox') //控件为checkbox
{
checkBoxs[i].checked = els.checked; //设置复选框状态
}
}
}
}
展开
 我来答
火狐
2014-10-01 · Firefox,最快最安全的上网体验
火狐
Mozilla Firefox火狐浏览器,是一款开放安全的开源浏览器,全球拥有5亿用户。
向TA提问
展开全部

  尊敬的用户,您好!很高兴为您答疑。

  您的问题在于:在IE下,event对象有srcElement属性,但是没有target属性;Firefox下,even对象有target属性,但是没有srcElement属性。

  故而

  var els = event.srcElement;

  应该改为

  var els=event.srcElement || event.target;

  实现此类遍历子节点的功能,强烈推荐引入jQuery框架,如果因为项目原因无法使用,请您参考阅读:IE的event.srcElement和Firefox的event.target

  希望我的回答对您有所帮助,如有疑问,欢迎继续咨询我们。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式