优化我的jquery的建议

时间:2013-11-23 14:49:00

标签: javascript jquery-ui jquery

不是一次又一次地写这样的线条,应该是什么样的专业方式&优化的方法来编写相同的代码?请帮忙

$(function(){

$('<img src="map/map_slice_1.jpg"/>').appendTo('#map_slice_1');
$('<img src="map/map_slice_2.jpg"/>').appendTo('#map_slice_2');
$('<img src="map/map_slice_3.jpg"/>').appendTo('#map_slice_3');
$('<img src="map/map_slice_4.jpg"/>').appendTo('#map_slice_4');
$('<img src="map/map_slice_5.jpg"/>').appendTo('#map_slice_5');
$('<img src="map/map_slice_6.jpg"/>').appendTo('#map_slice_6');
$('<img src="map/map_slice_7.jpg"/>').appendTo('#map_slice_7');
$('<img src="map/map_slice_8.jpg"/>').appendTo('#map_slice_8');             

});

4 个答案:

答案 0 :(得分:2)

$('[id^="map_slice_"]').append(function() { 

  return $('<img />', {src: 'map/' + this.id + '.jpg'});

});

Try Fiddle

答案 1 :(得分:0)

尝试

$(function(){
  for (var i=0; i<8; i++)
  {
     $('<img src="map/map_slice_" + i + ".jpg"/>').appendTo('#map_slice_' + i);
  }   

});

答案 2 :(得分:0)

对于优化不确定,但是为了可维护性和行数:

for(var i=1; i<=8 i++) {
  $('<img src="map/map_slice_'+i+'.jpg"/>').appendTo('#map_slice_'+i);
}

有可能找到更好的方法来实现这一目标。了解背景可能有所帮助。

答案 3 :(得分:0)

我会做这样的事情:

$(function () {
    var i = 0; 
    while (i++ < 8) {
        $('#map_slice_' + i).append(
            '<img src="map/map_slice_' + i + '.jpg"/>'
        );
    }
});