只是似乎没有工作… :-(已经看到更多的抱怨,但我找不到答案.
问题:
无限滚动工作,但不是手动触发.
当我点击链接,没有任何反应.
Firebug给了
我的代码:
<?PHP echo ('<ul id="infinite">'); ?> <?PHP $wp_query = new WP_Query(); $wp_query->query('paged='.$paged.'&cat=5&showposts=3&Meta_key=video_video&orderby=Meta_value&order=ASC' . $post->ID); while ($wp_query->have_posts()) : $wp_query->the_post(); ?> <?PHP if ( get_post_meta($post->ID,'video_video',true) ) : ?> <li class="video"><?PHP $home = array("h" => 290,"w" => 380,"zc" => 1,"q" =>100); //echo get('video_video'); echo ('With: '); echo get('participant_first_name'); echo (' '); echo get('participant_last_name'); echo ('</li>');?> <?PHP endif;?> <?PHP endwhile;?> <?PHP if (get_post_meta($post->ID,true) ) { ?> <?PHP if ($wp_query->max_num_pages > 1) : ?> <nav id="nav-below" > <div id="next" > <?PHP next_posts_link( __( 'Scroll down for more','intowntheme' ) ); ?></div> </nav> <?PHP endif; //end nav ?> <?PHP } else { ?> <p>There are no interviews at the moment </p> <?PHP } ?> </ul>
和我的脚本:
jQuery('ul#infinite').infinitescroll({ navSelector : "#next",// selector for the paged navigation (it will be hidden) nextSelector : "#next a",// selector for the NEXT link (to page 2) itemSelector : "ul#infinite li",// selector for all items you'll retrieve errorCallback: function() { // fade out the error message after 2 seconds $('#infscr-loading').animate({opacity: 0.8},2000).fadeOut('normal'); },loading : { msgText: "<em>Loading the next year of Grantees...</em>",finishedMsg: "<em>You've reached the end of the Interviews.</em>" },}); //kill scroll binding jQuery(window).unbind('.infscr'); //setTimeout("jQuery('#next').slideDown();",1000); //hook up the manual click guy. jQuery('#next a').click(function(){ jQuery('#next a').infinitescroll('retrieve.infscr'); return false; });
也试过
jQuery(document).trigger('retrieve.infscr');
代替
jQuery('#next a').infinitescroll('retrieve.infscr');
但没有运气.
然后Firebug说trigger(retrieve.infscr)的命名不正确
解决方法
Pfoe,发现它…长期的好文档(不用这个插件!)
这个:
jQuery('#next a').click(function(){ jQuery('#next a').infinitescroll('retrieve.infscr'); return false; });
应该:
jQuery('#next a').click(function(){ jQuery('ul#infinite').infinitescroll('retrieve'); return false; });
最大的问题是不应该在那里的.infscr
希望它帮助别人..
类似文档的解决方案:
jQuery("#clickable_element").click(function(){ jQuery('#main_content_container').infinitescroll('retrieve'); return false; });
注意:
如果您正在使用砖石或同位素以使其工作,您可能需要添加manual trigger behavior.只需在infinitescroll之后添加manual-trigger.js,并通过传递行为传递行为:“twitter”调用插件时.