有一種方法isActive()
在Zend_Navigation
。但是,對於當前路徑中的所有元素 (父母li
處於活動狀態,並且所有孩子也是如此,即使當前是父母li
),它也會返回true。Zend導航:當前頁
有沒有像isCurrent()
這樣的方法來判斷當前菜單項是否是當前頁?
我只是想將自定義類屬性添加到只有一個,ul和li的整個嵌套樹中的當前元素。
有一種方法isActive()
在Zend_Navigation
。但是,對於當前路徑中的所有元素 (父母li
處於活動狀態,並且所有孩子也是如此,即使當前是父母li
),它也會返回true。Zend導航:當前頁
有沒有像isCurrent()
這樣的方法來判斷當前菜單項是否是當前頁?
我只是想將自定義類屬性添加到只有一個,ul和li的整個嵌套樹中的當前元素。
您將需要使用您自己的導航視圖腳本,但這非常簡單。然後嘗試:
$this->navigation()->findActive($this->yourNavContainer);
這將返回一個對象,var轉儲它,你會看到你需要的數據。我認爲這個變量簡單地稱爲'頁面'。在你建立你的菜單,pre/post dispatch之前,然後在你的viewscript中,做一個if語句來檢查這個var對當前循環條目(我猜你的循環在foreach中)。
簡單:
$activeElement = $view->navigation()->findOneBy('active', 1);
,如果你是你的視圖腳本中,你可以使用:
$activeElement = $this->navigation()->findOneBy('active', 1);
你確定你的代碼是正確的? 'isActive()'應該只爲當前頁面返回true,而不是父頁面或者子頁面。 – Tamlyn 2011-01-14 14:03:43