所以我有了这个新闻提要系统,它在除IE8之外的所有浏览器上都能完美工作!
现在,我的代码是经过反复尝试的,所以可能存在一些我不知道的明显的编码问题。
这是外部JS文件(我使用jQuery 1.7.2 btw)
$(document).ready(function(){
$.ajax({
type: "GET",
url: "newsfeed_en.xml",
dataType: "html",
success: function(xml) {
$(xml).find("element:first").each(function(){
var year = $(this).find("year").text();
var month = $(this).find("month").text();
var day = $(this).find("day").text();
var date = day+"-"+month+"-"+year;
var content = $(this).find("content").html();
var newselement = '<div class="newsElement"><h4>'+date+'</h4><p>'+content+'</p></div>';
$('#news h1').after(newselement);
});
$(xml).find("element:gt(0)").each(function(){
var year = $(this).find("year").text();
var month = $(this).find("month").text();
var day = $(this).find("day").text();
var date = day+"-"+month+"-"+year;
var content = $(this).find("content").html();
var newselement = '<div class="newsElement"><h4>'+date+'</h4><p>'+content+'</p></div>';
$('#news #paneMoreNews').append(newselement);
});
}
});
});
`
它所做的就是把第一个元素放在一个位置,把所有其他元素放在其他地方。
现在我不得不将数据类型设置为HTML,因为有些ELEMENT包含LINKS,但将其更改为XML并不能解决问题。取消":第一"也不能解决问题。
我搜索了这个地方,但其他解决方案都不起作用。
您需要使用数据类型:xml
$.ajax({
type: "GET",
url: "sites.xml",
dataType: "xml",
success: function(xml) {
}
});