2013-01-12 27 views
1

我已經做了一個JQuery的功能,當我點擊它時改變鏈接顏色...代碼工作得很好,當我鏈接到我的鏈接#(哈希),但我與PHP混合它不會工作?OnClick函數將無法與href =「index.php?p =」

這是我的PHP它工作得很好:

<?php 
    $pages_dir = 'pages'; 
    if (!empty($_GET['p'])) { 
     $pages = scandir($pages_dir, 0); 
     unset($pages[0], $pages[1]); 
     $p = $_GET['p']; 
     if (in_array($p.'.inc.php', $pages)) { 
      include($pages_dir.'/'.$p.'.inc.php'); 
     } else { 
      echo '******.'; 
     } 
    } else { 
     include($pages_dir.'/hjem.inc.php'); 
    } 
?> 

而我在我的HTML鏈接它工作得很好過:

href="index.php?p=*********" 

但現在我想申請,使一個效果我的鏈接的背景顏色與我的OnClick效果不同:

$(document).ready(function(){ 
     var $targetElement = $("*** This is to my links ***"); 
     $targetElement.click(function() { 
      $targetElement.removeClass("changeColor") 
      $(this).addClass("changeColor"); 
    }); 
}); 

還有一些css:

#****** ul li a:link.changeColor{ 
    background-color:black; 
} 

jQuery的,只有當我HREF我的鏈接#工程,我想這與當然:)我的PHP代碼

+0

之前設置是否打開新頁面將不得不解析URL或儲存環節中的cookie點擊。新頁面加載時javascript不保持狀態。或者使用php來添加基於URL的類 – charlietfl

回答

1

如果你去到一個新的頁面,jQuery是不會反正上班因爲技術上它確實會觸發,但是你被重定向到另一個頁面,所以你不會看到結果。如果您想更改您重定向到的頁面上鍊接的值,那麼您需要使用JavaScript來抓取傳遞的GET變量並在那裏創建邏輯。或者你可以使用PHP來獲取GET變量並回顯你想要的正確類。

+0

我不太熟悉php,你們可以向我展示一些代碼或指向一個教程的鏈接,它可以讓我走上正確的道路嗎? :) – user1958149

1

不是a:visited是否滿足您的需求?

另外,請注意這個工作,你有一個不透明的背景色爲自己的鏈接(reference

+0

我不是很熟悉PHP,你們可以告訴我一些代碼或指向一個教程的鏈接,可以讓我在正確的方式嗎? :) – user1958149