我知道$ _SERVER ['REQUEST_URI']在獲取當前頁面的url時起作用,但是它在#網址。我喜歡在最後使用#blah來使頁面滾動到某個點。例如:
index.php#answer
使用$ _ SERVER [ 'REQUEST_URI']剛剛返回:
index.php
我怎樣才能使閱讀正文之後的#answer呢?
我知道$ _SERVER ['REQUEST_URI']在獲取當前頁面的url時起作用,但是它在#網址。我喜歡在最後使用#blah來使頁面滾動到某個點。例如:
index.php#answer
使用$ _ SERVER [ 'REQUEST_URI']剛剛返回:
index.php
我怎樣才能使閱讀正文之後的#answer呢?
URL散列不會發送到服務器。所以使用PHP或任何其他服務器端語言來檢索它是不可能的。
要實現滾動,請給出要滾動到id="answer"
的元素 - 然後瀏覽器會自動跳轉到該元素。如果您想使用JavaScript執行平滑滾動,您可以通過location.hash
訪問哈希 - 有一些很好的jQuery插件可用於平滑滾動到指定元素。
這不起作用,因爲散列不會被髮送到它用於頁面錨定的服務器。
您只能使用PATH_INFO
和QUERY_STRING
或REQUEST_URI
這是前面提到的兩個組合。 QUERY_STRING是URI中可選的?
之後的部分。
如果你真的想要的話,你可以從javascript訪問這個散列並通過AJAX發送它。
謝謝,我該如何讓PHP到頁面上的某個位置?我不知道整個代碼,只是一個想法 –
PHP不能「去某個地方」。它在服務器上運行,因此它只是將HTML發送回瀏覽器。如果你想傳遞數據到PHP腳本,使用GET參數,即'foo.php?whatever = something',然後在你的PHP腳本中使用$ _GET ['whatever']來訪問它們。 – ThiefMaster