通过Ajax加载XML新闻提要-IE8不起作用



所以我有了这个新闻提要系统,它在除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) {
    }
});

最新更新