我在CakePHP应用程序和jQuery脚本中有bootstrap 2.3.2导航列表来添加活动类。但随后我点击链接,它会暂时闪烁并保留它;当前状态。我想知道如果我可以在重新加载后保持我的导航项目处于活动状态。
<ul class="nav nav-pills nav-stacked menu">
<li><?php echo $this->Html->link(__('Reservations'), array('plugin' => false, 'controller' => 'streservations', 'action' => 'queue')); ?></li>
<li><?php echo $this->Html->link(__('Calendar'), array('plugin' => false, 'controller' => 'streservations', 'action' => 'calendar')); ?></li>
</ul>
脚本:
$(document).ready(function() {
$('.menu li').click(function(e) {
$('.menu li.active').removeClass('active');
var $this = $(this);
if (!$this.hasClass('active')) {
$this.addClass('active');
}
// e.preventDefault();
});
});
答案 0 :(得分:4)
从Twitter Bootstrap add active class to li添加了此脚本,我的代码可以运行:
/*Menu handler*/
$(function(){
var url = window.location;
// Will only work if string in href matches with location
$('ul.nav a[href="'+ url +'"]').parent().addClass('active');
// Will also work for relative and absolute hrefs
$('ul.nav a').filter(function() {
return this.href == url;
}).parent().addClass('active');
};
答案 1 :(得分:0)
string(41) "SELECT a FROM AppBundle\Entity\Province a"