以下元素:角UI路由器state.go和錨標記
<p ng-click="$state.go('state.a',{id: 'subsection-b'})">Click me</p>
是(點擊時)只瀏覽到我的狀態。a頁面的頂部,而不是向下滾動到
<p id="subsection-b">...</p>
該頁面上的元素。
爲什麼會這樣,我需要修改以獲取錨定標記以使用state.go? (順便說一句,我知道如何解決它與ui-sref
,但我需要它與state.go工作)
以下元素:角UI路由器state.go和錨標記
<p ng-click="$state.go('state.a',{id: 'subsection-b'})">Click me</p>
是(點擊時)只瀏覽到我的狀態。a頁面的頂部,而不是向下滾動到
<p id="subsection-b">...</p>
該頁面上的元素。
爲什麼會這樣,我需要修改以獲取錨定標記以使用state.go? (順便說一句,我知道如何解決它與ui-sref
,但我需要它與state.go工作)
id
在$state.go('state.a',{id: 'subsection-b'})"
是一個狀態參數!這不是一個html ID屬性。
的,你應該使用狀態網址:
<a href="[state_url] + #subsection-b"><p>Click me</p></a>
即[國家_url]是你在它的定義狀態設置的URL。
對於任何需要的UI-SREF語法:
ui-sref="page({name: 'name', '#': 'frag'})"
此外,安德魯Tobilko正確地指出,爲$ state.go函數的語法使用哈希(#)沒有 '身份證':
$state.go('page', {name: 'name', '#': 'frag'})
注:這需要UI路由器v0.2.14或更高。
感謝您的狀態參數的解釋,但我還是不明白,應該是爲了得到它的工作是什麼X在$ state.go(「X」)。 – jola
您無法使用'$ state.go()'鏈接到頁面中的特定ID。 – Mahmoud
@Mahmoud,'$ state.go(tab,{'#':anchor})' – Andrew