火狐和IE下JS兼容问题,火狐下出错
时间:2011-12-12
来源:互联网
以下是代码,以前在网上找的一个select弹出层选择 option的代码,在IE下有效,在火狐下 点击后没反应
在错误控制台里 提示 oInput is null
求解
window.onload = function ()
{
var oDemo = document.getElementById("demo");
var oInput = document.getElementById("UnderWrite");
var oDropbox = document.getElementById("dropbox");
var aA = oDropbox.getElementsByTagName("a");
var oClose = document.getElementsByTagName("em")[0];
alert(oInput);
var i = 0;
oInput.onclick = function (event)
{
$("#dropbox").fadeIn(200);
oDropbox.style.top = oDemo.offsetHeight + "px";
oDropbox.style.left = oInput.offsetLeft + "px";
oDropbox.style.width = oInput.clientWidth - 10 + "px";
(event || window.event).cancelBubble = true;
};
for (i = 0; i < aA.length; i++)
{
aA[i].onclick = function (event)
{
oInput.value = this.innerHTML;
$("#dropbox").fadeOut(200);
// (event || window.event).cancelBubble = true; //取消变量累加
};
}
oDropbox.onclick = function (event)
{
(event || window.event).cancelBubble = true;
};
document.onclick = oClose.onclick = function ()
{
$("#dropbox").fadeOut(200);
};
};
在错误控制台里 提示 oInput is null
求解
window.onload = function ()
{
var oDemo = document.getElementById("demo");
var oInput = document.getElementById("UnderWrite");
var oDropbox = document.getElementById("dropbox");
var aA = oDropbox.getElementsByTagName("a");
var oClose = document.getElementsByTagName("em")[0];
alert(oInput);
var i = 0;
oInput.onclick = function (event)
{
$("#dropbox").fadeIn(200);
oDropbox.style.top = oDemo.offsetHeight + "px";
oDropbox.style.left = oInput.offsetLeft + "px";
oDropbox.style.width = oInput.clientWidth - 10 + "px";
(event || window.event).cancelBubble = true;
};
for (i = 0; i < aA.length; i++)
{
aA[i].onclick = function (event)
{
oInput.value = this.innerHTML;
$("#dropbox").fadeOut(200);
// (event || window.event).cancelBubble = true; //取消变量累加
};
}
oDropbox.onclick = function (event)
{
(event || window.event).cancelBubble = true;
};
document.onclick = oClose.onclick = function ()
{
$("#dropbox").fadeOut(200);
};
};
作者: Parole 发布时间: 2011-12-12
UnderWrite 注意大小写,ie下getElementById忽略大小写,而火狐里不忽略
如果用jquery,那就用纯粹一点。
JScript code
如果用jquery,那就用纯粹一点。
JScript code
$('#UnderWrite').click(function(){ //.... });
作者: zswang 发布时间: 2011-12-12
var oInput = document.getElementById("UnderWrite");
检查一下是否有id为UnderWrite元素?
还有 不管什么浏览器都必须考虑大小写问题
检查一下是否有id为UnderWrite元素?
还有 不管什么浏览器都必须考虑大小写问题
作者: oggmm 发布时间: 2011-12-12
引用 2 楼 oggmm 的回复:
var oInput = document.getElementById("UnderWrite");
检查一下是否有id为UnderWrite元素?
还有 不管什么浏览器都必须考虑大小写问题
var oInput = document.getElementById("UnderWrite");
检查一下是否有id为UnderWrite元素?
还有 不管什么浏览器都必须考虑大小写问题
+1
作者: zsx841021 发布时间: 2011-12-12
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28