1

我刚刚开始学习 javascript,并且我编写了以下代码(来自 php 背景):

$(document).ready(function(){
$("#example-1").attr("rel","1");
$("#example-2").attr("rel","2");
$("#example-3").attr("rel","3");
});

我假设把它变成更像这样的东西会更快并且使用更少的资源(即使它是微不足道的):

        jQuery(document).ready(function(){
foreach #example-X
 i++
        $("#exmaple-[i]").attr("rel","[i]");
    });

我怎样才能做到这一点?

4

2 回答 2

5
$(function() {
    for( var i = 1; i <= 3; i++ ) {
        $( '#example-' + i + ' .example' ).attr( 'rel', i );
    }
} );

如果你有三个以上,假设它们是 div,我相信这应该可行

$(function() {
    for( var i = 1; i <= $( 'div[id^=example]' ).length ; i++ ) {
        $( '#example-' + i + ' .example' ).attr( 'rel', i );
    }
} );
于 2013-02-22T18:16:08.080 回答
2

试试这个:

$(document).ready(function(){
    for(var i = 1; i <= 3; i++) {
        $("#example-" + i).attr("rel", i);
    }
});

您可以连接以在其中创建您需要的任何字符串$()

如果您需要(#example-1 .example),请尝试

$("#example-" + i + " .example")
于 2013-02-22T18:16:36.287 回答