6

中有一个方法isActive()Zend_Navigation但它对当前路径中的所有元素都返回 true(即使当前路径是 parent ,父节点li也是活动的,所有子节点也是活动的li)。

有没有类似isCurrent(), 判断当前菜单项是否为当前页面的方法?

我只想将自定义类属性添加到ul 和 li 的整个嵌套树中的一个当前元素。

4

2 回答 2

7

更容易:

$activeElement = $view->navigation()->findOneBy('active', 1);

如果你在你的视图脚本中,你可以使用:

$activeElement = $this->navigation()->findOneBy('active', 1);
于 2012-02-22T17:31:24.287 回答
0

您将需要使用自己的导航视图脚本,但这相当简单。然后尝试:

$this->navigation()->findActive($this->yourNavContainer);

这将返回一个对象, var dump 它,您将看到您需要的数据。我认为该变量简称为“页面”。在构建菜单之前/后调度之前执行此操作,然后在您的视图脚本中,执行 if 语句以根据当前循环项目检查此 var(我猜您在 foreach 中循环它)。

于 2010-07-03T23:29:44.697 回答