Mam następujący problem. Strona www.my-motivator.pl działa bez zarzutów bez JS. To znaczy po kliknięciu w "Czytaj więcej" przechodzi na następną stronę, tj. stronę 2, 3 itd. Natomiast przy zastosowaniu JS przechodzi tylko na stronę 2. Później odnośnik przycisku jest ok (strona 3) ale nie działa już kliknięcie w niego.
Macie jakiś pomysł jak rozwiązać ten problem? Skrypt JS:
<script type="text/javascript"> // Ajax-fetching "Load more posts" $('.home_post_load_more a').live('click', function(e) { e.preventDefault(); //$(this).addClass('loading').text('Loading...'); //$('.load_more_text a').html('Loading...'); $.ajax({ type: "GET", url: $(this).attr('href') + '#main_container', dataType: "html", success: function(out) { result = $(out).find('#home_post_box_cont .home_post_box'); nextlink = $(out).find('.home_post_load_more a').attr('href'); //alert(nextlink); //$('#boxes').append(result).masonry('appended', result); $('#home_post_box_cont').append(result); //$('.fetch a').removeClass('loading').text('Load more posts'); //$('.load_more_text a').html('Load More'); if (nextlink != undefined) { $('.home_post_load_more a').attr('href', nextlink); } else { $('.home_post_load_more').remove(); $('#home_post_box_cont').append('<div class="clear"></div>'); // $('.load_more_cont').css('visibilty','hidden'); } if (nextlink != undefined) { $.get(nextlink, function(data) { //alert(nextlink); if($(data + ":contains('home_post_box')") != '') { //alert('not found'); // $('.load_more_cont').remove(); $('#home_post_box_cont').append('<div class="clear"></div>'); } }); } } }); }); </script>
I fragment kodu PHP który bez JS działa ok więc chyba jest dobry:
<div id="home_post_box_cont"> <?php $category_ID = get_category_id('blog'); 'post_type' => 'post', 'posts_per_page' => 3, 'post__not_in' => $slider_arr, 'cat' => '-' . $category_ID, 'paged' => ( get_query_var('paged') ? get_query_var('paged') : 1) ); query_posts($args); $x = 0; if (have_posts() ) : while (have_posts()) : the_post(); ?> <div class="home_post_box"> <a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('home-post'); ?></a> <div class="home_post_cont"> <h3><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3> <div class="home_post_meta"><!--<//?php the_author(); ?> ?php the_time('m-d-Y') --><?php the_time('m-d-Y') ?> / <?php comments_popup_link('Skomentuj ť', 'Komentarzy : 1 ť', 'Komentarzy : % ť'); ?></div> <div class="postentry"> <p class="home_post_more"> <a href="<?php the_permalink(); ?>" class="rmore"> Czytaj więcej... </a></p> </div> </div><!--//home_post_cont--> <div class="clear"></div> </div><!--//home_post_box--> <?php endwhile; else: ?> <?php wp_reset_query(); ?> <?php endif; ?> </div><!--//home_post_box_cont--> <div class="home_post_load_more"><?php next_posts_link('<img src="' . get_bloginfo('stylesheet_directory') . '/images/load-more-posts.png" />') ?></div>
Z góry dziękuję za pomoc
Nie mogę edytować postu (błąd ciągle wyświetla przy próbie zapisania) więc krótka informacja:
Wygląda na to że błąd nie leży w AJAX a w pętli wordpress'a która zawiera jakiś błąd. Muszę to dokładnie przeanalizować.