2016-03-08 81 views
0

我想要什麼,實現我可以在仍然更改URL的同時使用jQuery .load嗎?

我希望能夠通過不同崗位的邊欄中無縫轉移上this網站,而使用自定義模板後我的帖子有。無縫地說,我的意思是說,每次瀏覽它時屏幕都不會變白。

我的問題

的single.php或單{}塞.PHP不起作用,因爲在導航側邊欄

插件我使用

的URL不會改變

自定義文章類型UI

阿賈克斯內容呈現

jQuery腳本爲我的側邊欄

$(document).ready(function() { 
    $("#sidebar li:has(a)").click(function() { 

     var page = $("a:first",this).attr("href"); 

     $("#content").load(page); 
     return false; 
    }); 
}); 

HTML & PHP的側邊欄和內容區域

<div class="row"> <!-- Main content row --> 
    <div class="col-md-4" id="sidebar"> 
     <?php 
     if (is_page('gulvservice')){ 
      wp_nav_menu(array('menu'=>'gulvservice')); 
     } elseif (is_page('malerservice')) { 
      wp_nav_menu(array('menu'=>'malerservice')); 
     } elseif (is_page('industrilakering')) { 
      wp_nav_menu(array('menu'=>'industrilakering')); 
     } 
     ?> 
    </div> 

    <div class="col-md-8" id="content"> 
     <?php if (have_posts()) : while (have_posts()) : the_post(); ?> 
      <div class="title"><h1> 
        <?php the_title(); ?> 
       </h1></div> 
      <div class="div"> 
       <?php 
       if(has_post_thumbnail()) { 
        the_post_thumbnail(); 
       } 
       ?> 
      </div> 
     <?php endwhile; endif; ?> 
    </div> 
</div> 
</div> <!-- Main Content --> 

回答

1

需要防止對<a>事件。因此,這將是更好的選擇移動到這些元素

嘗試:

$(document).ready(function() { 
    $("#sidebar li a").click(function() { 
    var page = $(this).attr("href"); 
    $("#content").load(page); 
    return false; 
    }); 
}); 
+0

我不能相信這是那麼容易。然而它引發了另一個問題(顯然),'li'本身不再是可點擊的,這就是預期的。你知道這個問題的解決方法嗎? –

+0

嘗試添加'事件'參數,而不是'返回false'使用'event.preventDefault()' – charlietfl

+0

謝謝,我會嘗試! –

相關問題