2017-07-31 125 views
-1
var url = window.location.pathname; 
var filename = url.substring(url.lastIndexOf('/')+1); 
$("ul").find("a[href=filename]").addClass('active'); 

在我的header.php的UL:如何在php中使用特定的href将类添加到<a>?

<li><a href="index.php">Főoldal</a></li> 
<li><a href="gallery.php">Galéria</a></li> 
<li><a href="games.php">Játékok</a></li> 
<li><a href="contacts.php">Elérhetőségeink</a></li> 
<li><a href= "about.php">Rólunk</a></li> 

我花了几个小时与此有关。根据我目前所在的网站,我无法将一个类添加到锚标记中。

+1

让我们知道了什么是的console.log的'输出(文件名);'变种文件名= url.substring后'PH_1PH_1广告它(url.lastIndexOf( '/')+ 1);'和检查你的浏览器控制台,并让我们知道 –

+0

做'$(“ul> li> a [href ='”+ filename +“'”)“)。addClass('active')'可能会起作用,尽管最好添加类因为PHP知道哪一部分更准确(例如,如果你打算使用重写等) – apokryfos

回答

1

试试这个:

$uri=$_SERVER['REQUEST_URI']; 

有了这个,你得到的URI,如“的index.php”,现在你需要将它与您的代码中的URL进行比较。虽然我推荐使用JS/jQuery的,如:

var current_path_url=window.location.pathname; 

$('a[href="'+current_path_url+'"]').parent().addClass('active'); 
1

不会扩展变量引用字符串,你必须使用级联(除非你想使用ES6模板文字,但旧的浏览器不支持他们)。

$("ul > li > a[href=" + filename + "]").addClass('active'); 
相关问题