2016-08-12 8 views
0

私のブートストラップnavbarは、$(document).readyの関数呼び出しによってロードされます。私は非同期に= falseを設定しようとしましたが、それでもナビゲーションバー内のリンクをピックアップしませんクローラは、(私が試したjavascriptでレンダリングされたナビゲーションバーがクロールされないのはなぜですか?

function loadHeader(callback){ 
    $.ajax({ 
     url: "/resources/"+language+"/header.html", 
     async: true, 
     success: function (data) { 
      $('body').append(data); 

      if(callback){ 
       callback(); 
      } 

     }, 
     dataType: 'html' 
    });  
} 

:この関数は、次のようなものを(header.htmlで)ナビゲーションバーをロードしますGoogle検索コンソールやクローラープログラム「Screaming Frog」を介して取得/レンダリング)

最も奇妙なことは、いくつかの他の動的なページ要素の前にnavbarが読み込まれていることです.Google検索コンソールにはレンダリングに問題はありません。ここで

は(header.htmlで)私のナビゲーションバーがどのように見えるかのプレビューです:

なぜ私のナビゲーションバーのリンクがクローラによってピックアップされていない
<nav class="navbar navbar-default navbar-fixed-top index-nav"> 
    <div class="container" style="width:100%;">  
     <div class="navbrand"> 
     <a class="navbar-brand page-scroll" href="/en/"> 
      <img class="homelogo" src="/logos/company-Logo.png"/> 
     </a> 
     </div> 
     <ul class="nav navbar-nav navbar-left"> 
     <li class="dropdown resourcesLI"> 
      <a class="dropdown-toggle mousePointer" data-toggle="dropdown">Resources</a> 
      <ul class="dropdown-menu" role="menu"> 
       <li class="Link"><a href="/en/page_1.html">Page 1</a></li>        
       <li class="Link"><a href="/en/page_2.html">Page 2</a></li> 
      </ul> 
     </li> 
     </ul> 
    </div> 
    </nav> 

編集:一般的に、私はこの記事では、他の方法であなたの質問に答えました、私はSEO

答えて

0

に非常に新しいんだことに留意すべきである: https://stackoverflow.com/a/38948082/6715875

しかし、私はもっと手の込んだワナ場合 DOMが部分的に更新されたすべてのコンテンツは、検索エンジンのクローラによってインデックスに登録されません。これらの場合、上記のリンクで述べたソルーションを選択することができます。

よろしくお願いいたします。

関連する問題