如何在jQuery的for循环中向href添加变量?

时间:2012-11-27 15:56:49

标签: jquery

我在for循环中创建了8个div,我想将每个div的链接添加到不同的html页面。我还将html页面命名为0~7。那么我该如何制作变量" i"进入href?谢谢!

for(i = 0; i < 8; i++) {
    counter[i] = increase * (i * 2);
    var div = $('<div class="node"><a id="link" href=i + ".html"><img src=archive/' + i + '.jpg width="200" height="200"/></a></div>');
    div.css({'top':yoffset,'left':innerWidth/8 * i});
    $('body').append(div);
    objects[i] = div;
}

3 个答案:

答案 0 :(得分:4)

更改

var div = $('<div class="node"><a id="link" href=i+".html"><img src=archive/'+i+'.jpg width="200" height="200"/></a></div>');

var div = $('<div class="node"><a id="link" href="'+i+'.html"><img src=archive/'+i+'.jpg width="200" height="200"/></a></div>');

答案 1 :(得分:2)

var div = $('<div class="node"><a id="link" href="' + i + '.html"><img src=archive/' + i + '.jpg width="200" height="200"/></a></div>');

这应该使每个链接指向&lt; i&gt; .html。

答案 2 :(得分:1)

我建议创建元素并设置属性,而不是为元素创建HTML代码:

for(i = 0; i < 8; i++) {
  counter[i] = increase * (i * 2);
  var img = $('<img>', { src = 'archive/' + i + '.jpg', width: '200', height: '200' });
  var a = $('<a>', { id: 'link', href: i + '.html' }).append(img);
  var div = $('<div>', { 'class': 'node' }).append(a).css({'top':yoffset,'left':innerWidth/8 * i});
  $('body').append(div);
  objects[i] = div;
}