gui*_*nty 1 html javascript css internet-explorer-6
我正在尝试通过支持IE6,8和Firefox所需的跨浏览器平台使用Javascript.我很快发现这些浏览器都不包含匹配的Javascript库.
目标是根据其他项目的选择动态隐藏或显示项目.通常我只是在display:none和display:block之间切换,但是对于另一个开发人员的工作,我可以使用display:none隐藏字段,但是切换到display:block搞砸了布局.解决方案是简单地撕掉样式中的显示设置,或者完全撕掉样式.不幸的是,我遇到了库问题
Firefox支持我迄今为止尝试过的所有内容IE8和6不支持getElementById().style.removeProperty('display')IE6不支持getElementById().removeAttribute('style')
下面是我目前的代码,在IE8和FF中工作......但是它还需要在IE6中运行它.
function displayPrevLPQ(bShow) {
if (bShow) {
document.getElementById('prevLPQ').removeAttribute('style');
} else {
document.getElementById('prevLPQ').style.display = 'none';
}
}
function displayBusUnitSub() {
var buVal = document.getElementById('BusinessUnitID').value;
document.getElementById("BusinessCycle").selectedIndex = document.getElementById("BusinessCycle").getAttribute("default");
document.getElementById("Ibap").selectedIndex = document.getElementById("Ibap").getAttribute("default");
document.getElementById("Bca").selectedIndex = document.getElementById("Bca").getAttribute("default");
switch (buVal) {
case '11':
document.getElementById('buSub0').style.display = 'none';
document.getElementById('buSub1').removeAttribute('style');
document.getElementById('buSub2').style.display = 'none';
break;
case '1':
document.getElementById('buSub0').style.display = 'none';
document.getElementById('buSub1').style.display = 'none';
document.getElementById('buSub2').removeAttribute('style');
break;
default:
document.getElementById('buSub0').removeAttribute('style');
document.getElementById('buSub1').style.display = 'none';
document.getElementById('buSub2').style.display = 'none';
break;
}
}
Run Code Online (Sandbox Code Playgroud)
所以,问题是......如何以一种适用于所有三种浏览器的方式撕掉样式或显示属性?
提前致谢.