• 締切済み

Google AJAX Feed APIについて

ネットで出ているサンプルのソースを見るとjsの最後はこうなっています。 // ページが読み込まれたら、initialize関数を実行する google.setOnLoadCallback(initialize); 自分がやりたいことは、initializeの関数を実行する際に引数を渡したいです。 調べてみると、setOnLoadCallbackは引数を使えないようなので HTMLファイルで <script> $(function(){ initialize('feed1', 'フィードのurl1, 3); initialize('feed2', 'フィードのurl2, 3); }); </script> <div id="feed1"></div> <div id="feed2"></div> としたところ動作は正常なようです。 Google AJAX Feed APIを使ったプラグインもないようですし無理矢理 上記の形式にしているのですが、この方法で問題ないでしょうか? 引数を渡して汎用化したいと言うのは特に珍しいことでもないと思うのですが 調べても有力な情報が見つかりません。 何かいい方法がありましたら教えてください!

  • dcx147
  • お礼率33% (214/636)

みんなの回答

  • hirotn
  • ベストアンサー率59% (147/246)
回答No.1

setOnLoadCallback(function(){ initialize('feed1', 'フィードのurl1, 3); initialize('feed2', 'フィードのurl2, 3); }); ではいかがでしょうか。 参考URL http://stackoverflow.com/questions/5929734/use-parameter-in-function-passed-to-google-setonloadcallback

dcx147
質問者

お礼

<script> google.setOnLoadCallback(function(){ initialize('feed1', 'フィードのurl1, 3); initialize('feed2', 'フィードのurl2, 3); }); </script> 上記で出来ました^^続けての良回答本当にありがとうございます!

関連するQ&A

  • google feed apiを使い分けたい

    google ajax feed apiですが、下記コードを書いて "rss_url"部分を引数にして同一ページ内でURLの違うものを複数 使用したいのですが、やり方がわかりません。 理想は<div id = "feed"></div>の id = ""の部分を変更してURLごとに使い分けたいのですが、 どうすればいいでしょうか? google.load("feeds", "1"); function initialize() { var feed = new google.feeds.Feed("rss_url"); feed.setNumEntries(5); feed.load(function(result) { if (!result.error) { var container = document.getElementById("feed"); } }); } google.setOnLoadCallback(initialize); このコードだと<div id = "feed"></div>を記述すればうまく実行されます。 試しに google.load("feeds", "1"); function initialize(rss_url, id) { var feed = new google.feeds.Feed(rss_url); feed.setNumEntries(5); feed.load(function(result) { if (!result.error) { var container = document.getElementById(id); } }); } google.setOnLoadCallback(initialize); var test = new MyRssReader("rss_url", "test1"); として <div id = "test1"></div>としてみましがたうまくいきませんでした。

  • Google AJAX Feed APIについて

    ブログのRSSを使って自動的にホームページに新着ブログ記事の日付とタイトルを表示されるようにしたいと思い、Google AJAX Feed APIを使用しました。 下記のソースだとこのように表示されます。 ・タイトル(2009年6月22日) ・タイトル(2009年6月20日) 表示方法をもう少し変えたいんですが、文字サイズと行間の変更はどのようにすれば可能か、ご存知の方は教えて下さい。 1.文字サイズをもう少し小さく(10pxに)したい 2.行間がくっ付いているのでもう少し広くしたい <script type="text/javascript" src="http://www.google.com/jsapi?key=APIキー"></script> <script type="text/javascript"> google.load("feeds", "1"); function initialize() { var feed = new google.feeds.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("li"); var a = document.createElement("a"); a.href = entry.link; a.target = "_top" ; var date = new Date(entry.publishedDate); a.appendChild(document.createTextNode(entry.title + " (" + date.toLocaleDateString() + ")" )); div.appendChild(a); container.appendChild(div); } } }); } google.setOnLoadCallback(initialize); </script> <div id="feed"></div>

  • Google AJAX Feed APIについて

    よろしくお願いします。 Google AJAX Feed API で 外部のブログを複数取得しているのですが、 一覧を表示する際に、<div id="feed"></div>と記載するかと思うのですが、 これを2個使って別々の一覧を表示することは可能でしょうか? http://q.hatena.ne.jp/1285618603 こちらのページを参考にしてみたのですが、どうもうまくいきません。 どなたかご存知の方、参考のURLでも結構ですのでよろしくお願いいたします。

  • Google AJAX Feed API

    Google AJAX Feed APIでRSSを読み込んでタイトルなどの文字のみの表示をすることはできたのですが、(下の記述でやっています。) 画像が投稿されているブログ記事の画像を読み込み、表示させることはできるのでしょうか? その場合の方法はどのように、すればできるのでしょうか? お手数をおかけしますが、よろしくお願い致します。 <script type="text/javascript" src="http://www.google.com/jsapi?key="></script> <script type="text/javascript"> google.load("feeds", "1"); function initialize() { var feed = new google.feeds.Feed("http://");  <!--表示したいエントリー数--> 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("li"); var a = document.createElement("a");a.href = entry.link;  <!--別窓で表示しない場合は削除してください--> a.target = "_blank" ; a.appendChild(document.createTextNode(entry.title)); div.appendChild(a); container.appendChild(div); } } }); } google.setOnLoadCallback(initialize); </script>

  • Google AJAX Feed APIキー

    http://okwave.jp/qa/q7289256.html ↑こちらの記事を参考にしてサイトのTOPページにWPのタイトル表示を試みました。 表示はされるものの、そのタイトルを更にリンク(各記事にとぶ)にしたいのですが、 以下のソースのどこをいじればリンクになるのか教えて下さい。 ------------------------------------------------------- ■タイトル表示させたいページの<head>内に以下入れる。 <script type="text/javascript" src="http://www.google.com/jsapi"></script> <script type="text/javascript"> google.load("feeds", "1"); function initialize() { var feed = new google.feeds.Feed("★RSS★"); 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"); div.appendChild(document.createTextNode(entry.title)); container.appendChild(div); } } }); } google.setOnLoadCallback(initialize); </script> ■HTMLのタイトル表示させたい部分に以下入れる。 <div id="feed"></div> ------------------------------------------------------------------------------- よろしくお願い致します。

  • google feed api

    以下のようにブログのフィードを取得しようとしたのですが、何も出てきません。APIキーは 間違っていないです。二つのファイルは同階層です。余分なところは省略しています。 //test.html <title>Google AJAX Feed API テスト</title> <script type="text/javascript" src="http://www.google.com/jsapi?key=ABQIAAAABuy1BFnkBh8stkm....................................."> </script> <script type="text/javascript" src="test.js"> </script> </head> <body> <p>Google AJAX Feed API テスト</p> </body> </html> //test.js google.load("feeds", "1"); function initialize() { google.feeds.lookupFeed("http://feedblog.ameba.jp/rss/ameblo/blog/rss20.xml", getFeedUrl); } function getFeedUrl(result){ if (!result.error){ if (result.url != null) { var feed = new google.feeds.Feed(result.url); feed.load(dispfeed); } }else{ var container = document.getElementById("feed"); container.innerHTML = "フィードがありません"; } } function dispfeed(result){ if (!result.error){ var container = document.getElementById("feed"); var htmlstr = ""; htmlstr += '<h2><a href="' + result.feed.link + '">' + result.feed.title + '</a></h2>'; for (var i = 0; i < result.feed.entries.length; i++) { var entry = result.feed.entries[i]; htmlstr += '<h3><a href="' + entry.link + '">' + entry.title + '</a></h3>'; htmlstr += "<p>" + entry.publishedDate + "</p>"; htmlstr += "<p>" + entry.contentSnippet + "</p>"; htmlstr += "</p>"; } container.innerHTML = htmlstr; }else{ alert(result.error.code + ":" + result.error.message); } } google.setOnLoadCallback(initialize);

  • Google AJAX Feed APIで、ホームページにアメブロRS

    Google AJAX Feed APIで、ホームページにアメブロRSSを表示する際、「PR」広告を排除したいです。 現在のソースは以下の通りです。 ------------------------ <script type="text/javascript" src="http://www.google.com/jsapi?key=・・・・・・"></script> <script type="text/javascript"> google.load("feeds", "1"); function initialize() { var feed = new google.feeds.Feed("http://feedblog.ameba.jp/rss・・・・・"); feed.setNumEntries(5); 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 dd = new Date(entry.publishedDate); // now var yearNum = dd.getYear(); if (yearNum < 2000) yearNum += 1900; var m = dd.getMonth() + 1; if (m < 10) {m = "0" + m;} var d = dd.getDate(); if (d < 10) {d = "0" + d;} var date = yearNum + "." + m + "." + d + " "; container.innerHTML += "<p>" + date +" <a href='" + entry.link + "' target='_blank'>" + entry.title + "</a></p>"; } } }); } google.setOnLoadCallback(initialize); </script> (ボディー内) <p><div id="feed"></div></p> ------------------------ どこをどのようにすればいいのでしょうか? どうぞ宜しくお願いいたします。

  • Google AJAX Feed APIでの取得した日付の表示について

    お世話になります。 Google AJAX Feed APIにて簡単なRSSのリードを作成したく奮闘しており、某サイトに非常によいサンプルがあったのでそれを利用させていただいていたのですが、1点困ったことがあり投稿させていただきました。 現在下記のようなソースを使用しているのですが、 --ソース------------------------------------------------ ※keyの部分と所得RSS部分のアドレスは入っておりません。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"/> <title>Google AJAX Feed API テスト</title> <meta http-equiv="content-script-type" content="text/javascript" /> <script type="text/javascript" src="http://www.google.com/jsapi?key=【キーコード】"></script> <script type="text/javascript"> google.load("feeds", "1"); function initialize() { var feed = new google.feeds.Feed("【RSSアドレス】"); feed.setNumEntries(5); 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 dd = new Date(entry.publishedDate); // now var yearNum = dd.getYear(); if (yearNum < 2000) yearNum += 1900; var date = yearNum + "."+(dd.getMonth()+1)+"."+dd.getDate()+" "; container.innerHTML += "<p>" + date +" <a href='" + entry.link + "' target='_blank'>" + entry.title + "</a></p>"; } } }); } google.setOnLoadCallback(initialize); </script> </head> <body> <div id="feed"></div> </body> </html> -------------------------------------------------- 取得したフィードの日付の表示が 2008.6.6 タイトル となるのですが、日にちが1桁から2桁にかわると、 2008.6.6 タイトル 2008.6.12 タイトル となり、2桁の日付がタイトルを押してしまう形になってしまいます。 そこで、日付を 2008.06.06 タイトル 2008.06.12 タイトル という具合に、 一桁の場合に頭に0を付ける形で常に幅を揃えたいと考えているので すが、javaスクリプトの方がなんとなくわかる程度で自分では 書くことができず、こまっております。 非常に図々しい質問ではございますが、javaスクリプトに詳しい 方で、どういじればよいかわかる方おられましたら、お手数ですが お教えいただけますと幸いです。 どうぞよろしくお願いいたします。

  • Google AJAX Feed API でリンクを張るには?

    Google AJAX Feed API でリンクを張るには? Google AJAX Feed API を使ってアメブロの記事一覧をリンク付きでホームページに表示させたいのですが、記事タイトルのみ表示されてリンクが張れませんでした。 entry.titleの部分をentry.linkに変えるとURLが文字情報で表示されてしまいます。 記事タイトルをクリックするとアメブロの記事に飛ぶ様にリンクを張るにはどうすればいいでしょうか? よろしくお願いします。

  • Google AJAX Feed API keyつ

    サイトに、ブログなどのRSSフィードを表示させるときに、 Google AJAX Feed APIのkeyを取得して表示させるのですが、 取得するためのグーグルのページが移動してしまって、 どこにいったのやら全く分かりません。 以前は、以下のアドレスから取得していたのですが。。。 ・http://code.google.com/apis/ajaxfeeds/signup.html どなたかお教え下さい><

専門家に質問してみよう