WordPress と jQuery Mobile で構築したサイトで Infinite Scroll を使ってコンテンツを読み込むと、何故か読み込まれたコンテンツのリンク(a 要素)が認識されなかったのでその解決方法に関するメモ。
PC 用のテーマでは問題がなかったことと、以下のようにするとリンク要素の色は反映されたので、最初は、jQuery Mobile の問題だと思ってしまった。
jQuery(function($){
    $('#content').infinitescroll({
        navSelector : ".pagenavi", 
        nextSelector : ".pagenavi a:last", 
        itemSelector : ".recent_work" 
    }, function (){
           $( "div[data-role=page]" ).page( "destroy" ).page();
           //または $( "div[data-role=page]" ).trigger('create');
     });
});
いろいろと試してみたが、現象は変わらなかったため、コンテンツの中のリンク部分を個別(要素ごと)に読み込んでみると、ちゃんとリンクが機能することが判明。
読み込み対象のコンテンツ部分
<div class="work">
<p class="main_photo"><a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('works'); ?></a></p>
<h3><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
・・・省略・・・
</div><!-- end of .work -->
切り分けたところ、外側の div 要素を読み込むと現象が発生することがわかったので、それに指定している CSS を変更してみたところ、この div 要素に指定していた「float」の指定を外すと全く問題がなくなることが判明。
#content div.recent_work {
  float: left;  /*これを削除して解決*/
  width: 90%;
  margin: 10px 0;
  padding: 30px 10px;
  border:1px solid #CEA6CC;
  text-align: center;  
  background-color: #fff;
}
PC 用の CSS を流用したため本来は不要な「float」の指定だったので、削除しても問題なかったが、「float」の指定でこんな現象が発生するとは思っても見なかった。原因は特定できたが、なぜそのようになるのかは不明。