function VisibleDiv(obj) {
if (obj == BaseLog) {
var objStyle = document.getElementById('DivCalls').style;
if (objStyle.display == "block")
objStyle.display = "none";
else
objStyle.display = "block";
}
else if (obj == ViewReports) {
var objStyle = document.getElementById('DivReports').style;
if (objStyle.display == "block")
objStyle.display = "none";
else
objStyle.display = "block";
}
else if (obj ==Management) {
var objStyle = document.getElementById('DivManage').style;
if (objStyle.display == "block")
objStyle.display = "none";
else
objStyle.display = "block";
}
<a href="#" id="BaseLog" class="TextHeader" onclick="VisibleDiv(this)">Base Log </a>
Run Code Online (Sandbox Code Playgroud)
在上面的代码是在IE中工作但不在mozilla 3.6中工作.我检查obj==BaseLog过上面的代码不起作用.我尝试过很多选择
event.srcelement
window.event.srcelement
Run Code Online (Sandbox Code Playgroud)
但一切都是徒劳的.当我调试代码时,我发现obj具有完整的IE值,但同样的obj具有所有名称.ie.由#分隔的"基本日志"的标记,标识和类的名称.即a#BaseLog#TextHeader#
请建议我做什么?
要么使用
if (obj.id == 'BaseLog')
Run Code Online (Sandbox Code Playgroud)
要么
if (obj == getElementById('BaseLog'))
Run Code Online (Sandbox Code Playgroud)
在IE中,如果HTML元素具有idX,则在脚本中将全局变量X分配给该元素.对于许多其他浏览器来说情况并非如此,这也是它在IE中工作的原因,而不是Firefox的原因.
| 归档时间: |
|
| 查看次数: |
71 次 |
| 最近记录: |