jqueryを使用してwordpressブログの次のページを取得し、目的のdivを見つけて既存のdivに追加しています。この部分は問題なく動作します。しかし、私がする必要があるのは、slideDown アニメーションを追加することです。これまでの作業コードは次のようになります。
$.get(next_page, function(data) {
var response = $(data);
var more_div = $(response).find('.FeaturedRow1').html();
$('.FeaturedRow1').append(more_div).slideDown('slow');
$('.navigation').not(':last').hide();
hide() を応答、more_div、追加行に追加してみました。最初のケースでは、未定義のプロパティ表示を設定できないというエラーが表示されます。2 番目のケースでは、コンソールに HTML が表示され、"has no method hide" と表示されます。行 $(more_div). hide() も追加しようとしましたが、「Uncaught TypeError: Undefined のプロパティ 'display' を設定できません」というエラーが表示されます。3 行目で hide を使用する場合
$('.FeaturedRow1').hide().append(more_div).slideDown('slow');
FeaturedRow1 div全体を非表示にしてアニメーション化すると、divの一番上に移動します。これは私が望んでいないことです。
編集: 必要なセクションの重要な HTML 構造と jQuery コードは次のとおりです。
<div class="FeaturedRow1">
<div class="postspage">
//list of posts here
</div>
<div class="navigation">
<span class="loadless">
//hyperlink to previous page
</span>
<span class="loadmore">
//hyperlink to next page
</span>
</div>
</div>
loadmore 内のハイパーリンクをクリックすると、次の jQuery コードが呼び出されます
$('.loadmore a').live('click', function(e) {
e.preventDefault();
var next_page = $(this).attr('href');
$.get(next_page, function(data) {
var $response = $(data);
var $more_div = $response.find('.FeaturedRow1').hide();
$more_div.appendTo('.FeaturedRow1').delay(100).slideDown('slow')
$('.navigation').not(':last').hide();
});
});
$('.loadless').live('click', function(e) {
e.preventDefault();
if ($('.postpage').length != 1) {
$('.postpage').last().remove();
}
$('.navigation').last().remove();
$('.navigation').last().show();
});