Autor Zpráva
T-fon
Profil
na netu jsem našel tento kód:
<script src="jquery.js"></script>
<script src="jquery.jgfeed.js"></script>
<script>
$.jGFeed('http://twitter.com/statuses/user_timeline/26767000.rss',
  function(feeds){
    // Check for errors
    if(!feeds){
      // there was an error
      return false;
    }
    // do whatever you want with feeds here
    for(var i=0; i<feeds.entries.length; i++){
      var entry = feeds.entries[i];
      // Entry title
      entry.title;
    }
  }, 10);
</script>
Moc JS neznám, ale zhruba tento kód chápu, bohužel ho neumím použít. Nerozumím tomu řáku "entry.title". Kdybych ten cyklus chápal jako v PHP, tak bych místo toho napsal document.write(entry) a on by mi při každém průchodu vypsal title,description, pubDate,... Ale to nefunguje. Dokáže někdo poradit?
_es
Profil
T-fon:
na netu jsem našel tento kód
Nerozumím tomu řáku "entry.title".
Prečo sa neinformuješ tam, kde si to našiel? No aj tak to vyzerá na chybný kód, alebo si ho len zle opísal. Ten riadok s veľkou pravdepodobnosťou nerobí nič.
Chamurappi
Profil
Reaguji na T-fona:
tak bych místo toho napsal document.write(entry) a on by mi při každém průchodu vypsal
… a přemazal stránku. Asi budeš chtít dávat entry.title do něčího innerHTML.

RSS reader pomocí jQuery
To není pomocí jQuery, ale pomocí jakéhosi skriptu jquery.jgfeed.js, který jsi sebral kdovíkde… a my ho neznáme.

Z Twitteru jde mimochodem tahat data i pohodlněji než přes RSS.
T-fon
Profil
_es:
je to už starej článek, takže nevim jestli by mi někdo odpověděl, ale hlavní problém je moje angličtina :(
Chamurappi:
napsal jsem toto: document.getElementById(i).innerHTML = entry.title;
s tim, že v body mám <p id="1"></p>
předpokládám, že je to špatná syntaxe té proměnné i, protože když místo ní napíšu 1, tak to funguje, ale nevím, jak to má být správně. I tak to furt nic neřeší, protože to vypíše pouze titul prvního příspěvku, nic víc. Pokud napíšu místo entry.title jen entry, tak mi to napíše:
[object Object].
Z Twitteru ty data nechci, to sem tam nechal jen z toho příkladu.
a tady je ten JS:
(function($){$.extend({jGFeed:function(url,fnk,num,key){if(url==null){return false;}var gurl="http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&callback=?&q="+url;if(num!=null){gurl+="&num="+num;}if(key!=null){gurl+="&key="+key;}$.getJSON(gurl,function(data){if(typeof fnk=="function"){fnk.call(this,data.responseData.feed);}else{return false;}});}});})(jQuery);

budu vděčný za jakoukoliv pomoc
Chamurappi
Profil
Reaguji na T-fona:
předpokládám, že je to špatná syntaxe té proměnné i
Není. Ale i se ti mění od 0 do nějakého čísla, takže pokud nemáš v kódu všechny elementy, hledání podle id selže.
Spíš by sis asi měl sestavit jeden celý HTML kód ze všech zpráv a ten pak přiřadit do innerHTML.

Já bych to napsal nějak takhle:
var code = [];
for(var i=0; i<feeds.entries.length; i++){
  var entry = feeds.entries[i];
  code.push("<h2>" + entry.title + "</h2>");
  code.push("<p>" + entry.description);
}
document.getElementById("něco").innerHTML = code.join("");
T-fon
Profil
Chamurappi:
díky za kód, teď jsem ho zkoušel, funguje, bohužel z nějakého důvodu to bere jen title a link, u description a pubDate mi to napíše undefined...


odkaz na ten script je přímo na oficiální stránkách jQuery:http://archive.plugins.jquery.com/project/jgfeed

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: