2011-04-07 77 views
0

我想顯示使用jQuery插件jFeed rss飼料如下。它的打印警報(「OK」),但它不是(從除調用頁面不同的域)顯示Feed標題alert(feed.title);無法檢索飼料使用jFeed

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<script type="text/javascript" src="javascript/jquery.js"></script> 
<script type="text/javascript" src="javascript/jquery.jfeed.js"></script> 



<script type="text/javascript"> 
$(document).ready(function(){ 
alert('ok'); 
$.getFeed({ 
    url: 'http://feeds.nytimes.com/nyt/rss/Technology', 
    success: function(feed) { 
     alert(feed.title); 
    } 
}); 

}); 

</script> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
<title>Insert title here</title> 
</head> 
<body> 
<div id="main"> 

</div> 
</body> 
</html> 

回答

2

不能加載外部飼料。從檔案中提供

例子插件頁面

報價, 以及基本的PHP代理(僅測試 目的),用於加載外部 飼料。

有束中的proxy.php文件。

使用它。


使用所提供的代理,你需要做的

$.getFeed({ 
    url: '/local-path-to-proxy/proxy.php', 
    data: {url:'http://feeds.nytimes.com/nyt/rss/Technology'}, 
    success: function(feed) { 
     alert(feed.title); 
    } 
}); 

調整路徑代理文件相應

+0

隨着該proxy.php我們可以從不同獲得飼料域。 – JavaGeek 2011-04-07 18:55:45

+0

@Sukumar,是的。這是代理人的觀點。瀏覽器不允許跨域的Ajax請求(*除非格式是JSONP *)。但是,您可以使用服務器端技術(*在本例中爲*,如php)從遠程位置獲取數據並將其發送到ajax請求。已更新答案中的使用示例。 – 2011-04-07 19:17:32

+0

非常感謝。現在我懂了。它顯示警報窗口但不顯示任何東西。瀏覽器中是否有任何東西被阻塞? – JavaGeek 2011-04-07 19:28:05