Rak*_*yal 1 javascript firefox internet-explorer innerhtml
在我的JSP中,我使用的自定义标记<showDateFormat/>
如下:
Date From:<showDateFormat/>
Run Code Online (Sandbox Code Playgroud)
在我的common.js文件中
function addDateFormatInfo(){
var dateFormatHolder = document.getElementsByTagName("showDateFormat");
if ( dateFormatHolder ){
for ( i = 0 ; i < dateFormatHolder.length; i++ ){
dateFormatHolder[i].innerHTML = '<div class="infoSmall" ><span>(mm/dd/yyyy)</span></div>';
}
}
}
Run Code Online (Sandbox Code Playgroud)
所以在我的页面中,只要有showDateFormat标签被使用,它就会显示出来(mm/dd/yyyy).它在FF中工作正常,但在IE中却没有.可能是什么问题呢?
您需要先告诉IE有关标签的信息.在调用之前在某处添加此行addDateFormatInfo():
document.createElement("showDateFormat");
Run Code Online (Sandbox Code Playgroud)
IE现在将正确初始化元素 - 您可以像处理任何其他元素一样对待它.Firefox会自动执行此操作.
这是源博客文章:
http://ajaxian.com/archives/getting-html-5-styles-in-ie-7
createElement()在IE7中支持启动 - 虽然我在FF3.0.15中工作正常
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Home | My Website</title>
</head>
<body>
<script type="text/javascript">
document.createElement("showDateFormat");
function addDateFormatInfo(){
var dateFormatHolder = document.getElementsByTagName("showDateFormat");
if ( dateFormatHolder ){
for ( i = 0 ; i < dateFormatHolder.length; i++ ){
dateFormatHolder[i].innerHTML = '<div class="infoSmall" ><span>(mm/dd/yyyy)</span></div>';
}
}
}
</script>
<div>
Date From:<showDateFormat/>
</div>
<div>
Date From:<showDateFormat/>
</div>
<div>
Date From:<showDateFormat/>
</div>
<div>
Date From:<showDateFormat/>
</div>
<p><input type="button" value="click me" onclick="addDateFormatInfo()" />
</p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3543 次 |
| 最近记录: |