注意:原件 & 新的裏面的代碼。用php,js和mysql導航菜單
我的問題在於,原始「父母」不是很友善,不按照計劃行事,它也不會在網站地圖中找到。
但新是搜索引擎優化友好,將得到拾起在網站地圖,並將按計劃在最後。
我需要它是一個鏈接,以便您可以看到左側的導航菜單和每個菜單/子菜單的名稱,並且在頁面的中間有一張帶有每個子菜單名稱的圖片,菜單取決於您在左側的導航菜單中單擊哪個父級。
隨着新增行添加我得到一個頁面刷新由於鏈接,所以子菜單隻刷新刷新前打開一秒。
什麼,我需要幫助解決的是:
-Making子菜單留頁面刷新過程中打開,以便您可以同時使用從側邊欄導航的導航和中心導航。
預先感謝!
//吉姆
這是我目前的菜單:
<div id="container">
<dl>
<?php
$select_category = mysql_query("SELECT * FROM menu WHERE hidden = 0 ORDER BY menu ASC");
while($ln = mysql_fetch_array($select_category)){
$idcat = $ln['nmr'];
$catname = str_replace(' ', '-', $ln['menu']);
?>
*Original*: <dt><a href="#/<?php echo $catname; ?>/" style="color:#000;" ><strong><?php echo $ln['menu']; ?></strong></a></dt>
*New*: <dt><a href="http://www.mysite.com/cats/<?php echo $msub['nmr'];?>/<?php echo $mname; ?>/" style="color:#000;" ><strong><?php echo $mn['menu']; ?></strong></a></dt>
<?php
$select_sub = mysql_query("SELECT * FROM submenu WHERE nmrmenu = '$idcat' AND hidden = 0");
if(mysql_num_rows($select_sub) == 0){
}else {
?>
<dd>
<ul>
<?php
while($lsub = mysql_fetch_array($select_sub)){
$subname = str_replace(' ', '-', $lsub['submenu']);
$pil = '»';
$brnr = $lsub['nmr'];
?>
<li> <a href="http://www.mysite.com/cat/<?php echo $lsub['nmr'];?>/<?php echo $subname; ?>/" style="color:#333;"> <?php echo $pil; ?> <?php echo $lsub['submenu']; ?></a></li>
<?php } ?>
</ul>
</dd>
<?php } ?>
</dl>
<?php } ?>
</div>
CSS:
#container{ margin:auto; margin-left:10px; }
dl, dt, dd, ul, li, a{ margin:0; padding:0; }
a{ text-decoration: none; color:#0F0; }
li{ padding-left:.6em; list-style-type:none; color:#FF0; }
dl{ width:100px; }
dt{ }
JS:
$(function()
{
$("dd:not(first)").hide();
$("dt a").click(function()
{
$("dd").slideUp("normal");
$(this).parent("dt").next("dd").slideDown("normal");
});
});
這是我的代碼jsFiddle。
使用HTML,CSS和JS一個的jsfiddle的任何機會呢? :) – Technoh
@Technoh這裏是一個小提琴http://jsfiddle.net/eFPpC/ 然而,JS似乎並沒有工作,但希望它更有意義。 –
我已經修復了您的jsFiddle並將其添加到您的問題中(您忘記了包含jQuery)。現在,您的新舊代碼之間的主要區別在於舊代碼未觸發刷新,因此導航功能可以保持打開狀態。使用新代碼,整個頁面都會刷新。我唯一能想到的方法就是使用ajax來替換頁面內容。 –