Javascript函数可以在firefox和chrome中使用,但不能在IE9中使用
我用javascript编写了一些简单的函数,这些函数在除IE9之外的大多数浏览器中都能正常工作。我听说Ie9对逗号等很挑剔,但我无法发现任何明显的问题。你们中有人能解释一下吗?完整代码如下Javascript函数可以在firefox和chrome中使用,但不能在IE9中使用,javascript,html,firefox,google-chrome,internet-explorer-9,Javascript,Html,Firefox,Google Chrome,Internet Explorer 9,我用javascript编写了一些简单的函数,这些函数在除IE9之外的大多数浏览器中都能正常工作。我听说Ie9对逗号等很挑剔,但我无法发现任何明显的问题。你们中有人能解释一下吗?完整代码如下 <script type="text/javascript"> document.addEventListener("DOMContentLoaded", load, false); function load() { //dom loade
<script type="text/javascript">
document.addEventListener("DOMContentLoaded", load, false);
function load() {
//dom loaded
var elUserId = document.getElementById("user_id");
var elPasswordId = document.getElementById("password");
var elLoginMsg = document.getElementById("usernameMsg");
var elPasswordMsg = document.getElementById("passwordMsg");
var elIncreaseFontSize = document.getElementById("increaseFont");
var elResetFontSize = document.getElementById("resetFont");
var elChangeContrast = document.getElementById("changeContrast");
var elResetContrast = document.getElementById("resetContrast");
var logInbox = document.getElementById("loginBox");
var helpWithBB = document.getElementById("helpWithBB");
var fontUp = '135%';
var fontReset = '100%';
var black = '#000000';
var white = '#ffffff';
var divReset ='415px';
var divChange ='525px';
var txtSizeChange ='40.5em';
var txtReset ='42em';
elLoginMsg.style.display ='none';
elPasswordMsg.style.display = 'none';
elPasswordId.addEventListener("focus", function(){
showText(elPasswordMsg);
}, false);
elUserId.addEventListener("click", function(){
showText(elLoginMsg);
}, false);
elResetFontSize.addEventListener("click", function(){
//pass size change and element affected to be manipulated
//resetTextSize(fontReset,logInbox,elPasswordMsg);
changeTextSize(fontReset,logInbox,elPasswordMsg,divReset,txtReset);
});
elChangeContrast.addEventListener("click", function(){
//pass size change and element affected to be manipulated
changeContrast(logInbox, helpWithBB, black, white);
});
elResetContrast.addEventListener("click", function(){
document.location.reload(true);
});
elIncreaseFontSize.addEventListener("click", function(){
//pass size change and element affected to be manipulated
changeTextSize(fontUp,logInbox,elPasswordMsg,divChange,txtSizeChange);
});
function changeContrast(mainDiv, secDiv, txtColor, bkColor){
secDiv.style.background = bkColor;
mainDiv.style.background = bkColor;
showText(elPasswordMsg);
showText(elLoginMsg);
elLoginMsg.style.color = txtColor;
elPasswordMsg.style.color = txtColor;
var anchors = document.getElementsByTagName('a');
for(var i = 0; i < anchors.length; i++) {
anchors[i].style.color = txtColor;
}
var para = document.getElementsByTagName('p');
for(var i = 0; i < anchors.length; i++) {
para[i].style.color = txtColor;
}
}
function changeTextSize(fontUp, elDiv, msg, divH, msgT){
document.body.style.fontSize=fontUp;
elDiv.style.height = divH;
msg.style.top = msgT;
}
function showText(id){
id.style.display ='block';
}
}
</script>
document.addEventListener(“DOMContentLoaded”,load,false);
函数加载(){
//dom加载
var elUserId=document.getElementById(“用户id”);
var elPasswordId=document.getElementById(“密码”);
var elLoginMsg=document.getElementById(“usernameMsg”);
var elPasswordMsg=document.getElementById(“passwordMsg”);
var elIncreaseFontSize=document.getElementById(“increaseFont”);
var elResetFontSize=document.getElementById(“resetFont”);
var elChangeContrast=document.getElementById(“changeContrast”);
var elResetContrast=document.getElementById(“resetContrast”);
var logInbox=document.getElementById(“logInbox”);
var helpWithBB=document.getElementById(“helpWithBB”);
var fontUp='135%';
var fontReset='100%';
var black='#000000';
var white=“#ffffff”;
var divReset='415px';
var-divChange='525px';
var txtSizeChange='40.5em';
var txtReset='42em';
elLoginMsg.style.display='none';
elPasswordMsg.style.display='none';
elPasswordId.addEventListener(“焦点”,函数(){
showText(elPasswordMsg);
},假);
elUserId.addEventListener(“单击”,函数(){
showText(elLoginMsg);
},假);
elResetFontSize.addEventListener(“单击”,函数(){
//焊道尺寸更改和要操纵的受影响元素
//resetTextSize(fontReset、logInbox、elPasswordMsg);
changeTextSize(fontReset、logInbox、elPasswordMsg、divReset、txtReset);
});
elChangeContrast.addEventListener(“单击”,函数(){
//焊道尺寸更改和要操纵的受影响元素
更改对比度(logInbox、helpWithBB、黑色、白色);
});
elResetContrast.addEventListener(“单击”,函数(){
文档。位置。重新加载(true);
});
elIncreaseFontSize.addEventListener(“单击”,函数(){
//焊道尺寸更改和要操纵的受影响元素
changeTextSize(fontUp、logInbox、elPasswordMsg、divChange、txtSizeChange);
});
功能更改对比度(mainDiv、secDiv、txtColor、bkColor){
secDiv.style.background=bkColor;
mainDiv.style.background=bkColor;
showText(elPasswordMsg);
showText(elLoginMsg);
elLoginMsg.style.color=txtColor;
elPasswordMsg.style.color=txtColor;
var archors=document.getElementsByTagName('a');
对于(var i=0;i
在对addEventListener()
的一些调用中,您缺少第三个参数(useCapture
),但除此之外,没有明显的错误。我知道Firefox在去年才开始支持addEventListener()
,没有第三个参数,所以IE 9可能不支持它
更新
这个理论到此为止。IE 9中的两个参数似乎很好:在什么情况下不起作用?感谢您的输入。反正我把第三个参数放进去了。任务还在继续!