4

我在 for 循环中创建了八个 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;
}
4

3 回答 3

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>');
于 2012-11-27T15:58:48.760 回答
2
var div = $('<div class="node"><a id="link" href="' + i + '.html"><img src=archive/' + i + '.jpg width="200" height="200"/></a></div>');

这应该使每个链接指向 <i>.html。

于 2012-11-27T15:59:01.460 回答
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;
}
于 2012-11-27T16:07:19.293 回答