javascript当中getElementById的使用方法

<body><divid="recom_box"><ulclass="title"><liid="recom_boxtag1"class="on"onmouseover=... <body>
<div id="recom_box">
<ul class="title">
<li id="recom_boxtag1" class="on" onmouseover="testattrib(1,3,recom_box);">公告1</li>
<li id="recom_boxtag2" class="" onmouseover="testattrib(2,3,recom_box);">公告2</li>
<li id="recom_boxtag3" class="" onmouseover="testattrib(3,3,recom_box);">公告3</li>
</ul>
</div>
</body>
</html>

js为
function getid(value)
{
return document.getElmentById(value);
}
function testattrib(curnum,totnum,idname)
{
for(var i=1;i<=totnum;i++)
{
getid(idname+"tag"+i).className="";
}
getid(idname+"tag"+curnum).className="on"

}

可是为什么getid返回的是[object HTMLdiv],而不是将所获取到的id的className设置为on?
展开
 我来答
第二号帅哥
推荐于2018-03-29 · TA获得超过336个赞
知道小有建树答主
回答量:413
采纳率:77%
帮助的人:178万
展开全部

定义和用法

getElementById() 方法可返回对拥有指定 ID 的第一个对象的引用。

语法

document.getElementById(id)

说明

HTML DOM 定义了多种查找元素的方法,除了 getElementById() 之外,还有 getElementsByName() 和 getElementsByTagName()。

不过,如果您需要查找文档中的一个特定的元素,最有效的方法是 getElementById()。

在操作文档的一个特定的元素时,最好给该元素一个 id 属性,为它指定一个(在文档中)唯一的名称,然后就可以用该 ID 查找想要的元素。


例子

<html>
<head>
<script type="text/javascript">
function getValue()
  {
  var x=document.getElementById("myHeader")
  alert(x.innerHTML)
  }
</script>
</head>
<body>

<h1 id="myHeader" onclick="getValue()">This is a header</h1>
<p>Click on the header to alert its value</p>

</body>
</html>

 document.getElementById()是js对于页面动态的处理,配合PHP使用最佳,通常用AJAX后台网络处理.

wswhk
推荐于2016-03-10 · TA获得超过7.1万个赞
知道顶级答主
回答量:4.6万
采纳率:68%
帮助的人:7.6亿
展开全部

你写的有一些拼写错误

<html>
<head>
<script type="text/javascript">
function getid(value)
{
    return document.getElementById(value);
}
function testattrib(curnum,totnum,idname)
{
    for(var i=1;i<=totnum;i++)
    {
        getid(idname+"tag"+i).className="";
    }
    getid(idname+"tag"+curnum).className="on";

}
</script>
</head>
<body>
    <div id="recom_box">
           <ul class="title">
              <li id="recom_boxtag1" class="on" onmouseover="testattrib(1,3,'recom_box');">公告1</li>
               <li id="recom_boxtag2" class=""  onmouseover="testattrib(2,3,'recom_box');">公告2</li>
               <li id="recom_boxtag3" class="" onmouseover="testattrib(3,3,'recom_box');">公告3</li>
           </ul>
    </div>
</body>
</html>
追问
我看了下,没有错误啊。我是将js文件引用进去的。将鼠标放到公告1上,运行到for 循环里面的getid,然后按F11再单步调试,随后跳到function getid里面执行,但是,此时执行看到firebug右边的值为[object HTMLDivElement]。再按F11回到for 循环里面的getid,再按就直接退出了。没有达到给选定的id的class进行赋值。
追答
1 你的getElementById拼错了 自己查一下行不
2 onmouseover里面第三个变量是要加引号的 你没加

主要就是这两个问题
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式