Last modified: 2013-09-26 17:22:26 UTC
Copying from r84906#code-comments, Since the script at bookmanager.js interacts with the DOM, it should be executed only when document is ready, as in: $(function() { //Code goes here... }); Besides, I think you should replace if ( $prev[0] ) by if ($prev.length) if ( $next[0] ) by if ($next.length) And if would be good idea to add an id for the top navigation and another for the botton, so that $( ' .mw-book-navigation ' ) can be replaced by something like $( '#some-id-for-top, #some-id-for-bottom' ).find( ' .mw-book-navigation ' ) , which is more efficient. See [[mw:JavaScript_performance#Selector_performance_.28jQuery.29]]
It seems that the first part is already fixed on trunk: http://svn.wikimedia.org/viewvc/mediawiki/trunk/extensions/BookManager/client/bookmanager.js?revision=87713&view=markup I think currently the only thing needed is to use ids for the top/bottom navigation bars.
Rephrasing bug summary. Jumped out in general searches and thread views, mentioning book manager now.