jQuery Ajaxにてブログの読み込みを行っておりますが、プログラムでブログの取得数を設定することは可能でしょうか?
現在、10件読み込まれておりますが、表示させたいのは3件なので、4つめ以降をcssでdisplay: none;の指定で消している状態です。
↓ jsファイルの記述
$(function(){ function formatDt(dt_string) { var dt = new Date(dt_string); var y = dt.getFullYear(); var m = ('00' + (dt.getMonth() + 1)).slice(-2); var d = ('00' + dt.getDate()).slice(-2); return y + '.' + m + '.' + d; } $.ajax({ url: 'http://xxx/blog/?feed=rss2', type: 'get', dataType: 'xml', timeout: 5000, success: function (xml, status) { if (status === 'success') { var row = 0; var data = []; var nodeName; $(xml).find('item').each(function () { data[row] = {}; $(this).children().each(function () { // 子要素を取得 nodeName = $(this)[0].nodeName; // 要素名 data[row][nodeName] = {}; // 初期化 attributes = $(this)[0].attributes; // 属性を取得 for (var i in attributes) { data[row][nodeName][attributes[i].name] = attributes[i].value; // 属性名 = 値 } data[row][nodeName]['text'] = $(this).text(); }); row++; }); $('#rss').wrapInner('<ul></ul>'); for (i in data) { $('#rss').find('ul').append('<li><div class="postDate">' + formatDt(data[i].pubDate.text) + '</div><p class="postTitle"><a href="' + data[i].link.text + '">' + data[i].title.text + '</a></p></li>'); } } } }); });
↓ 出力されたHTML
<div id="rss"> <ul> <li><div class="postDate">2017.01.11</div><p class="postTitle"><a href="http://xxx/blog/archives/381">さんぷる</a></p></li> <li><div class="postDate">2017.01.05</div><p class="postTitle"><a href="http://xxx/blog/archives/366">さんぷる</a></p></li> <li><div class="postDate">2017.01.01</div><p class="postTitle"><a href="http://xxx/blog/archives/377">さんぷる</a></p></li> ・ ・ ・ </ul> </div>
↓ cssの記述
#rss ul li:nth-child(n+4) { display: none; }
不勉強で初歩的な質問ばかりで申し訳ありませんがどうぞ宜しくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/01/15 12:31