给许多物品赋予身份 - 这是一个坏主意吗?

时间:2013-08-17 17:12:34

标签: javascript jquery html

我正在开发一个django项目,很快模板变得一团糟,最后几乎所有元素都有一个ID(只是为了澄清,所有ID都是唯一的)。我可以通过给父母一个ID来减少ID的数量,但这会增加我的jQuery代码。所以我要问的是

  

在HTML中使用很多ID 稍微减少ID和JS / jQuery代码会更好吗?

以下是示例代码:

<ol>
    <li>
        <p>
            <a href="/vote/" class="vote" id="story-vote-26"><img src="/static/images/arrow.gif"></a>
            <a href="http://www.lettersofnote.com/2012/10/people-simply-empty-out.html" class="title" id="story-title-26">“People simply empty out”</a> <span class="domain">(www.lettersofnote.com)</span>
        </p>
        <p class="story-info">
            <span id="story-points-26">660</span> points by tantaman &#448; 31 minutess ago
        </p>
    </li>
    ...

这些li中至少有100个,每个都有4个ID(我还没有添加第4个)。因此,如果我向li添加ID,则总共有400个ID或100个ID

3 个答案:

答案 0 :(得分:2)

ID的主要目的是在DOM中唯一标识元素。 精确定位在JavaScript和CSS中使用的元素非常有用。

只要您对这些ID的应用基于此规则,其良好

答案 1 :(得分:1)

拥有很多身份证明没有问题。用于查找元素的哈希算法可以很好地扩展。

因此,只要您没有可以使用id解决的性能问题,选择是否应添加一些ID的主要规则应该是:

  • 是否使代码更具可读性(更简洁的代码通常更具可读性)?
  • 是否使代码更容易发展?

不要仅仅为了添加一些id而使代码更复杂,但是没有隐藏的代价。

答案 2 :(得分:0)

最好使用具有唯一ID的元素。它可以帮助javascript和CSS选择和操作dom。但是没有两个元素应该具有相同的id。 Increasing javascript code will increase page load time. 因此,如果需要,最好减少javascript代码并为html元素设置唯一ID