0
function globalModelToggleClicked(modname)
{
var state = this.checked ? true : false;
var display = this.checked ? 'inline-block' : 'none';
var inputs = document.getElementsByTagName('input');
var input_l = inputs.length;
// check uncheck inputs checkboxes
while(input_l--)
{
var input = inputs[input_l];
if(input.getAttribute('class') == modname)
{
input.checked = state;
}
}
// show/ hide all colorings
var main = document.getElementById('main');
var divs = main.getElementsByTagName('div');
var divs_l = divs.length;
var regex = new RegExp(modname);
while(divs_l--)
{
var div = divs[divs_l];
if(regex.test(div.getAttribute('class'))
&& (/hit/.test(div.getAttribute('class'))
|| /seqBorder/.test(div.getAttribute('class'))
)
)
{
div.style.display = display;
}
}
}
function localModelToggleClicked(modname)
{
var display = this.checked ? 'inline-block' : 'none';
// get parent fieldset
var fieldset = this.parentNode;
while(fieldset.nodeName != 'FIELDSET')
{
fieldset = fieldset.parentNode;
}
// show/ hide all colorings
var divs = fieldset.getElementsByTagName('div');
var divs_l = divs.length;
var regex = new RegExp(modname);
while(divs_l--)
{
var div = divs[divs_l];
if(regex.test(div.getAttribute('class'))
&& (/hit/.test(div.getAttribute('class'))
|| /seqBorder/.test(div.getAttribute('class'))
)
)
{
div.style.display = display;
}
}
}
上述两个函数切换div的可见性。除了IE浏览器(8)之外,它们在所有浏览器中都能正常工作,而且我不知道哪里出了问题。我试过调试器,它什么也没有显示。这些函数在其他函数的外部脚本上运行。当我在函数内部提醒时,一切似乎都是按顺序的。任何人都可以帮助 ?Javascript在Internet Explorer中切换
Javascript库是否存在这个问题?这可以用jQuery的几行代码来编写,而且你不太可能遇到浏览器不兼容问题。 – 2012-07-30 13:04:42
我在jquery中做了这个工作,这是一个类似的问题,所以我用JavaScript编码,它似乎解决了这个问题,但不是,Internet Explorer不喜欢这个代码:( – user1338194 2012-07-30 13:07:42
)你能解释一下这些函数是如何工作的吗?打算用吗?一个jsFiddle演示也会很酷。 – 2012-07-30 13:25:57