我的网页上有一个 javascript 函数有问题,它适用于 FF 但不适用于 IE8。 这是它的调用方式:
<div class="inscription-content-titre pacifico p48 textfontcolor">
<input id="supporter" type="radio" name="group" value="Supporter" class="mlm" onclick="javascript:handleForm('supporter')" required/>
<label class="labelmargintop" for="supporter">{{ 'inscription.supporter.titre'|trans({}, 'messages') }}</label>
</div>
和功能:
<script type="text/javascript">
function handleForm(group)
{
if(group == 'fan'){
document.getElementById('supporter_form').style.display = 'block';
document.getElementById('supporter_list_header').style.display = 'block';
document.getElementById('fan_list_header').style.display = 'block';
document.getElementById('fan_list').style.display = 'block';
document.getElementById('footer_checkbox').style.display = 'block';
document.getElementById('footer_button').style.display = 'block';
document.getElementById('supporter_list').style.display = 'none';
}
else{
document.getElementById('supporter_form').style.display = 'block';
document.getElementById('supporter_list_header').style.display = 'block';
document.getElementById('fan_list_header').style.display = 'block';
document.getElementById('fan_list').style.display = 'block';
document.getElementById('footer_checkbox').style.display = 'block';
document.getElementById('footer_button').style.display = 'block';
document.getElementById('supporter_list').style.display = 'block';
}
}
</script>
出于我不知道的原因,ie 会出现一个奇怪的错误,指出属性 handleForm 的值为 null 或未定义,而不是函数对象。
有人知道为什么 IE 不执行我的代码吗?
感谢阅读。
最佳答案
听起来您可能正在使用 Angular > 1.3,在这种情况下,IE8 is not supported .
可能有很多方法,一些尝试包括更改变量替换(或简化它)或摆脱 required
属性作为 IE8 does not support that either .
你也不需要 javascript:
位,onclick="handleForm( 'supporter' )
是所有需要的,尽管它应该敲响警钟为什么您没有将该功能作为 Angular 内容的一部分来处理。将全局功能与 Angular 驱动的功能混合在一起似乎很奇怪,尽管这与您的问题无关,更多的是观察。
关于javascript - JS 内部函数未在 IE8 上执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34490302/