例如,我有 html 块:
<div class="span3">
<div class="firstDiv"></div>
</div>
<div class="span3">
<div class="secondDiv"></div>
</div>
这个html块的副本可以用javascript插入,所以我有大量的这些块一个接一个。
我想听听关于将 id 放在所有这些元素上以便与它们一起工作是否是一种标准/有效的做事方式的观点。我有一个好方法可以在生成的元素上放置具有匹配后缀的唯一 ID,例如:
...
<div class="span3">
<div id="firstDiv_154 class="firstDiv""></div>
</div>
<div class="span3">
<div id="secondDiv_154 class="secondDiv""></div>
</div>
<div class="span3">
<div id="firstDiv_155 class="firstDiv""></div>
</div>
<div class="span3">
<div id="secondDiv_155" class="secondDiv"></div>
</div>
...
然后作为一般规则,当我单击集合中的 firstDiv 时对 secondDiv 做一些事情,我可以这样做:
$('.firstDiv').on ('click', function(evt) {
var idToFind = $(evt.target).attr('id').replace(/firstDiv/, /#secondDiv/)
var $secondDiv = $(idToFind);
// do something with $secondDiv
});
是否有更有效的方法来使用 id?
如果不使用 id,我可以使用 jQuery:
如果我想从第一个元素中找到第二个元素:
$('.firstDiv').parent().next().children()
如果我重新排列元素太多,这会破坏,或者
$('.firstDiv').closest('.span3').find('.secondDiv')
这将更健壮,但可能比第一个 jQuery 方法更占用资源。
您(请有经验的网络开发人员)推荐所有这些方法中的哪一种?