0
我想創建一個擴展來顯示從我的飼料中使用谷歌飼料API獲取的所有最新帖子。爲了實現這一點,我在background.js添加以下代碼:cross rider擴展使用谷歌飼料api從飼料中獲取新帖子
appAPI.ready(function() {
// Global variable to hold the toggle state of the button
var buttonState = true;
// Sets the initial browser icon
appAPI.browserAction.setResourceIcon('images/icon.png');
// Sets the tooltip for the button
appAPI.browserAction.setTitle('My Postreader Extension');
appAPI.browserAction.setPopup({
resourcePath:'html/popup.html',
height: 300,
width: 300
});});
和popup.html,
<!DOCTYPE html><html><head><meta http-equiv="X-UA-Compatible" content="IE=edge">
<script type="text/javascript">
function crossriderMain($) {eval(appAPI.resources.get('script.js')); }</script>
</head>
<body><div id="feed"></div></body></html>
的的script.js文件是─
google.load("feeds", "1");
function initialize() {
var feed = new google.feeds.Feed("http://www.xxxxx.com/feed/");
feed.setNumEntries(10);
feed.load(function(result) {
if (!result.error) {
var container = document.getElementById("feed");
for (var i = 0; i < result.feed.entries.length; i++) {
var entry = result.feed.entries[i];
var div = document.createElement("div");
var link = document.createElement('a');
link.setAttribute('href', entry.link);
link.setAttribute('name', 'myanchor');
div.appendChild(document.createTextNode(entry.title));
div.appendChild(document.createElement('br'));
div.appendChild(link);
div.appendChild(document.createElement('br'));
container.appendChild(div);
}
}
});
}
google.setOnLoadCallback(initialize);
但我無法得到所需的結果。彈出窗口不顯示任何內容。它只是保持空白。
background.js代碼和popup.html代碼看起來一般,但似乎從script.js文件,「谷歌」對象沒有定義?你是否在另一個腳本中加載它?是否有意在popup.html頭文件中爲google feed API提供另一個SCRIPT標籤?另外,你是否看到任何錯誤[控制檯中的消息](http://docs.crossrider.com/#!/guide/howto_console_log)? [免責聲明:我是一名Crossrider員工] – Shlomo
在控制檯中沒有收到任何錯誤消息 – rammurtee
是的,應該有另一個腳本標記來在google.html中餵養api。謝謝,讓我試試 – rammurtee