会JS的来看下

@Ta 2014-01-12 4205点击
<html><head><title id="i"></title></head><body><p id="i">a</p><script>document.getElementById("i").innerHTML="New text!";</script></body></html>

为什么我的浏览器只有head的文本改了,p的文本没改啊
回复列表(8|显示机器人聊天)
  • @Ta / 2014-01-12 / /
  • @Ta / 2014-01-12 / /
  • @Ta / 2014-01-12 / /
    我看到帖子空白
  • @Ta / 2014-01-12 / /
    Js不懂
  • @Ta / 2014-01-12 / /
    应该是id不能重复吧,或者浏览器兼容问题
  • @Ta / 2014-01-12 / /
    @myzly,可以有相同的ID, 当没有用JS去获取这个ID 的时候,没有影响当要用JS去找这个指定的ID,则不能有2个一样的。建议用class 定同样的名字。
  • @Ta / 2014-01-13 / /
    getElementById只认一个id,而且一个网页中不要有俩相同id,就像网页中的锚,比如有个 "返回顶部"链接:<a href="#top">,而你却在网页中放了两个或更多id为top的元素,那你点回顶时,你到底想让浏览器到哪儿?这不是为难它嘛。
    而且就算id可以同名,那也得分个先后顺序吧,肯定是先遍历,再一个个修改,所以如果正确,应该这样写: getElementById
    ( "i" ) [0]. innerHTML= "New
    text!" ; getElementById
    ( "i" )[1] . innerHTML= "New
    text!" ;
    当然这是不可能的,举个例子而已。还是用getElementsByClassName吧
  • @Ta / 2014-01-13 / /
添加新回复
回复需要登录