0

不支持 webkit 浏览器 "ruby of justify"。

我找到了这个 javascript ( https://code.google.com/p/justify/ )。

由于使用了这个,出现了一个新的问题......

<ul id="列表">
  <li>
   <h3 id="main"><ruby>Lorem<rt id="sub">Ipsum</rt></ruby></h3>
   <p>Lorem ipsum dolor sit amet……</p>
  </li>
 </ul>

这可以。但是这个脚本使用了“document.getElementById”。

当元素增加时,它当然不起作用。

当我将“document.getElementById”重写为“document.getElementsByClass”时,Uncaught TypeError: Object #<NodeList> has no method...

当元素增加时,我该怎么办?

(对不起……我英语不好)

4

1 回答 1

1
Uncaught TypeError: Object #<NodeList> has no method...

发生此错误是因为您试图将节点列表视为单个节点。可能是因为您忘记从getElementsByClassName.

getElementById返回单个 DOM 元素,但getElementsByClassName返回 DOM 元素的列表(类似数组的对象)。你必须索引到后者,而不是前者。

<div class="foo" id="bar"></div>

<script>
alert(
    document.getElementById('bar')   // One result at most, so no [0].
    ===
    // ClassName, not Class.  [0] since the result is a list.
    document.getElementsByClassName('foo')[0]
);
</script>

应该提醒“真实”

于 2013-08-01T00:33:38.583 回答