2014-06-12 18 views
0

我建立我的第一個多語種的網站(英文/法文) 我在某些時候直接訪問 這裏建立定位標記是一個工作示例:
https://www.dropbox.com/s/0d6flq8dqrr2rwe/anchorTag.pngURL錨 - 空格和法國字符允許?

我的問題是:是可以在URL中的#後加上空白和法文字符嗎?

我在問,因爲現在它似乎在Chrome/Firefox/IE(最新版本)上工作,我想知道爲什麼我讀過它們應該被編碼等。我想保留空間和法國字符(如果可能的話)(更方便用戶閱讀未編碼的URL)。

P.S: 我的網站是在PHP(代碼點火器),我不介意讓過時的瀏覽器了..

謝謝!

回答

0

在規格中沒有很好的定義。然而,RFC 3986給出的網址如下正則表達式:(。*)的錨

^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))? 

將意味着它會被罰款,但當然,我們可以測試它。

降價鏈接至少在SO上不起作用。這個錨標籤也沒有。 (查看源)

如果我複製網址

http://stackoverflow.com/questions/24185279/url-anchor-space-and-french-characters-permitted#dìobhairt 

粘貼到瀏覽器,Chrome的控制檯讓我對window.location.hash正確的答案。但最好避免,因爲你的用戶可能無法鏈接到你的網站!

您應該設置一個鏈接「代碼名稱」到您的網頁的表格,而不是使用URL中的實際頁面標題。但請記住 - 網址適用於人類,因此請務必使其具有意義!

+1

感謝您的詳細解答,我會添加一個像你一樣的「錨名稱」,我只是懶惰,並使用相同的頁面標題作爲錨點。現在,我將硬編碼2個不同的字符串(一個用於標題,一個用於錨點): $ lang ['label_video_set_up'] \t \t =「配置文件é riel」; $ lang ['anchor_video_set_up'] \t \t ='configurer-votre-materiel'; – Astro

相關問題