<html>
<head>
<script type="text/javascript">
function prev()
{
var pages=document.getElementsByName("page");
var length=pages.length;
var i;
for(i=0;i<length;i++)
{
if(pages[i].style.display=="block")
{
break;
}
}
if(i==0)
{
return;
}
else
{
pages[i].style.display="none";
pages[i-1].style.display="block";
}
}
function next()
{
var pages=document.getElementsByName("page");
var length=pages.length;
var i;
for(i=length-1;i>=0;i--)
{
if(pages[i].style.display=="block")
{
break;
}
}
if(i==length-1)
{
return;
}
else
{
pages[i].style.display="none";
pages[i+1].style.display="block";
}
}
</script>
</head>
<body>
<form>
<div name="page" style="display:block">
1
</div>
<div name="page" style="display:none">
2
</div>
<div name="page" style="display:none">
3
</div>
<div name="page" style="display:none">
4
</div>
<div name="page" style="display:none">
5
</div>
<div name="page" style="display:none">
6
</div>
<div name="page" style="display:none">
7
</div>
<div name="page" style="display:none">
8
</div>
<div name="page" style="display:none">
9
</div>
<div name="page" style="display:none">
0
</div>
</form>
<a href="" onclick="prev();return false;">Prev</a>
<a href="" onclick="next();return false;">Next</a>
</body>
</html>
在chrome和ff下都没事,在ie下不能用,为什么呢?求高人解答

解决方案 »

  1.   

    搜索一下document.getElementsByName  div
    你就能知道答案了
      

  2.   


    <html>
    <head>
    <script type="text/javascript">
    function prev() {
    var divs = document.getElementsByTagName("div");
    var pages = [];
    for(var i=0;i<divs.length;i++) if(divs[i].getAttribute("name")=="page") pages.push(divs[i]);
    var length = pages.length;
    var i;
    for (i = 0; i < length; i++) {
    if (pages[i].style.display == "block") {
    break;
    }
    }
    if (i == 0) {
    return;
    } else {
    pages[i].style.display = "none";
    pages[i - 1].style.display = "block";
    }
    }
    function next() {
    var divs = document.getElementsByTagName("div");
    var pages = [];
    for(var i=0;i<divs.length;i++) if(divs[i].getAttribute("name")=="page") pages.push(divs[i]);
    var length = pages.length;
    var i;
    for (i = length - 1; i >= 0; i--) {
    if (pages[i].style.display == "block") {
    break;
    }
    }
    if (i == length - 1) {
    return;
    } else {
    pages[i].style.display = "none";
    pages[i + 1].style.display = "block";
    }
    }
    </script>
    </head>
    <body>
    <form>
    <div name="page" style="display:block">
    1
    </div>
    <div name="page" style="display:none">
    2
    </div>
    <div name="page" style="display:none">
    3
    </div>
    <div name="page" style="display:none">
    4
    </div>
    <div name="page" style="display:none">
    5
    </div>
    <div name="page" style="display:none">
    6
    </div>
    <div name="page" style="display:none">
    7
    </div>
    <div name="page" style="display:none">
    8
    </div>
    <div name="page" style="display:none">
    9
    </div>
    <div name="page" style="display:none">
    0
    </div>
    </form>
    <a href="javascript:prev();void(0);">Prev</a>
    <a href="javascript:next();void(0);">Next</a>
    </body>
    </html>
      

  3.   

    name属性本来只是用在input上的吧。。
    所以getElementsByName也只能获取input的name属性,只是后来Chrome FF这些扩展了一下。
    于是新标准getElementsByName就全面支持了。。
    可能你的IE版本比较老吧。。IE9+貌似就支持
      

  4.   

    document.getElementsByName("page");
    介个,你从哪里学来的。请使用document.getElementsByTagName("page");