我有一个Ajax脚本,它读取一个XML文件并将每个节点附加到一个带有ID"链接的div中。"脚本工作正常,但我想在课堂上显示每个结果" col-md-3"。
这是来自Ajax脚本的循环:
$(xml).find('ref').each(function () {
// set thumbs and big image paths
var thumbUrl = 'img/thumbs/';
var bigUrl = 'img/';
$('<a />')
.append($('<img>').prop('src', thumbUrl + img).attr('alt', alt))
.prop('href', bigUrl + img)
.prop('title', title)
.prop('alt', alt)
.attr('data-gallery', '')
.appendTo($('#links'));
});
结果如下:
<div id="links">
<a href="img/apple.jpg" title="Apple" data-gallery="">
<img src="img/thumbs/apple.jpg" alt="Apple"></a>
<a href="img/orange.jpg" title="Orange" data-gallery="">
<img src="img/thumbs/orange.jpg" alt="Orange"></a>
</div>
我希望在列类中显示每个图像链接&#34; col-md-3&#34;像这样:
<div id="links">
<div class="col-md-3">
<a href="img/apple.jpg" title="Apple" data-gallery="">
<img src="img/thumbs/apple.jpg" alt="Apple"></a>
</div>
<div class="col-md-3">
<a href="img/orange.jpg" title="Orange" data-gallery="">
<img src="img/thumbs/orange.jpg" alt="Orange"></a>
</div>
</div>
答案 0 :(得分:2)
答案 1 :(得分:0)
我会在插入DOM之前生成完整的HTML代码。它节省了资源,您实际上也可以看到插入的内容:
xml = $.parseXML( '<ref img="350x150" alt="Alt 1" title="Title 1"></ref>' );
var newItemHtml = '';
var thumbUrl = 'https://placehold.it/';
var bigUrl = 'https://placehold.it/';
var links = $('#links');
$(xml).find('ref').each(function(i) {
var thisRef = $(this);
var src = thumbUrl + thisRef.attr('img');
var href = bigUrl + thisRef.attr('img');
var alt = thisRef.attr('alt');
var title = thisRef.attr('title');
newItemHtml += '<div class="col-md-3">\n';
newItemHtml += ' <a href="' + href + '" title="' + title + '" data-gallery="">\n';
newItemHtml += ' <img src="' + src + '" alt="' + alt + '">\n';
newItemHtml += ' </a>\n';
newItemHtml += '</div>\n';
});
links.append(newItemHtml);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="links"></div>
&#13;
同样在this Fiddle。