在IE中使元素可见?

时间:2012-11-06 23:29:38

标签: javascript css internet-explorer getelementbyid

正如标题所说..是否有办法让它与IE一起工作?

我正在使用:

document.getElementById('loadingImage').style.visibility='visible';

有关

<img id="loadingImage" src="images/25.gif" style="padding:0px;margin-bottom:-7px;visibility:hidden;">

但它不起作用。感谢。

编辑: 正在使用列表调用此 alert then reload page IN detect file extension upload script

function TestFileType( fileName, fileTypes ) {
if (!fileName) return;

dots = fileName.split(".")
//get the part AFTER the LAST period.
fileType = "." + dots[dots.length-1];

if (fileTypes.join(".").indexOf(fileType) != -1) {
   document.getElementById('loadingImage').style.visibility='visible';
   return true;
} else {
   alert('Please select (.w3g) file only!');
   return false;
}
}

<input name="replay_file" id="replay_file" type="file" accept=".w3g*"/>
<input type="submit" id="upload_file" value="Upload" name="uploadReplay" onClick="return TestFileType(this.form.replay_file.value, ['w3g','.w3g']);" />
<img id="loadingImage" src="images/25.gif" style="padding:0px;margin-bottom:-7px;visibility:hidden;">

PS:这不是一个重复的问题,因为其他问题并没有那么相关。

1 个答案:

答案 0 :(得分:1)

这两项变化如何:

this.form.replay_file.value 替换为:

document.getElementById('replay_file').value

并在此行的末尾添加缺少的分号:

dots = fileName.split(".");

顺便提一下,您将函数的第二个参数作为数组并将其连接到字符串。为什么不把它作为一个字符串传递开始?

此外,在2个数组成员中,'w3g'永远不会匹配(只有'.w3g'可能匹配),因为你总是查找以点开头的字符串......

建议:与返回类型保持一致。如果期望此函数返回布尔值,则第一行应更改为:

if (!fileName) return false;