我有一个xml
这样的文件:
<posts>
<post id="123">
<title>UN meets on North Korean missile launch - </title>
<link>index2.htm</link>
</post>
<post id="124">
<title>UN meets on North Korean missile launch - </title>
<link>index2.htm</link>
</post>
</posts>
我的html
文件中有一个 div,id='contact'
我想从我的xml
文件中提取数据到我的 div 中html
,所以我会从中选择<post>
标签xml
并从中提取<link>
标签,然后将它们中的每一个放在一行中<div class="line">
,这样当这个div
s 宽度等于页面宽度,<div class="line">
将关闭,其余<link>
的将附加到<div class="line">
将生成的新页面。
<div id="container">
<div id="top-nav">
<ul>
<li><a href="#">Website.com</a></li>
<li><a href="#">About Me</a></li>
<li><a href="#">News</a></li>
<li><a href="#">Services</a></li>
<li><a href="#">Abilities</a></li>
<li><a href="#">Ideas</a></li>
</ul>
</div>
<div id="content">
<!-- Content Will Goes Here! -->
</div>
<div id="bottom-nav">
<ul>
<li><a href="#">Contact</a></li>
<li><a href="#">Branches</a></li>
<li><a href="#">Jobs</a></li>
<li><a href="#">Privacy Policy</a></li>
<li><a href="#">Publishs</a></li>
</ul>
</div>
</div>
我想这样做JQuery
:
$(document).ready(function() {
$.ajax({
type:"GET",
url:"posts.xml",
dataType:"xml",
success:function(xml){
var line = '<div class="line"></div>';
$(line).appendTo('#content');
$(xml).find('post').each(function(index, element) {
var postLink = $(element).find('link').text();
var postFont = $(element).find('font').text();
var Link = '';
Link += '<div class="link '+postFont+'"><a href="'+postLink+'">';
Link += $(element).find('title').text();
Link += '</a></div>';
var lastLine = $('.line')[$('.line').length-1];
var lineHeightBefore = parseInt($(lastLine).css('height'));
//alert(lineHeightBefore);
console.log(lineHeightBefore);
$(Link).appendTo(lastLine);
var lineHeightAfter = parseInt($(lastLine).css('height'));
if(lineHeightAfter > lineHeightBefore){
$('.link').last().remove();
$(line).appendTo('#content');
lastLine = $('.line')[$('.line').length-1];
$(Link).appendTo(lastLine);
}
});
}
});
});
但是效果不好。
请查看并测试我的代码以找到问题
谢谢