2011-03-15 32 views
0

我想使用javascript刷新頁面並轉到div id。如何使用Javascript將頁面重定向到page.php#示例

例子我做了什麼是

echo "<script type='text/javascript'>top.location.href = '" . $url . "/page.php#contact';</script>";  

例的#contact DIV是在頁面的一半,它不工作,除非我打回車鍵,它會轉到#contact

<div id="contact">Contact</div> 

如果用PHP可以做到

header('Location:/page.php#contact'); 

讓我知道正確的方式做到這一點

+0

它做了什麼? – 2011-03-15 12:20:04

+0

如果使用PHP不要忘記,因爲它正在編寫頭文件,所以必須在任何其他輸出之前調用頭文件函數。 – 2011-03-15 12:43:05

回答

2

技術上腳本應該工作。至少當我嘗試它時,它似乎沒有太多問題。但是,請記住,如果您只是將javascript放在頁面上,那麼瀏覽器可以立即運行它,而無需等待整個頁面加載。我的觀點是,如果您在之前輸出javascript ,則實際上會在頁面上放置DIV標記,但瀏覽器可能尚未看到div標記,並且無法在其中滾動瀏覽器。

你想要麼確保腳本的HTML烴源或JavaScript的運行後的頁面已經通過使用這樣的事情,例如加載DIV後輸出:

echo "<script type='text/javascript'> 
window.onload = function() { top.location.href = '" . $url . "/page.php#contact'; }; 
</script>"; 

而且,如果你想刷新頁面,那麼這將不起作用,因爲瀏覽器假設你只想去#contact的位置,如果url是與當前url相同。

+0

+1感謝您的解釋另外:P – haha 2011-03-15 12:53:45

0

簡單:

location.href = '#contact'; 
+0

我試過..例如'#contact' div的內容的一半,但它不會工作,除非我們按下鍵盤上的輸入按鈕。 – haha 2011-03-15 12:24:56

0

確保您的網頁有書籤或定位在接觸格附近的定位點

爲了進入#contact div,您必須在那裏定義錨點[聯繫人]或書籤。

接觸

,那麼它應該重定向到相應的位置

0
echo $url; //for debugging purpose only, to see if you are writing this right! 
echo "<script type='text/javascript'> 
location.href = '" . $url . "/page.php#contact'; 
</script>"; 

toplocation.href之前需要。

相關問題