2011-08-26 106 views
1

我有一個網址,要麼看起來像這樣與多個#iPad的困難

http://www.URL.com/photography.html#project

或本

http://www.URL.com/photography.html#img1

甚至這個

http://www.URL.com/photography.html#project#img1

這是在所有的瀏覽器,但在iPad上的網址工作盛大的改變,看起來像這樣

http://www.URL.com/photography.html#project%23img1

這不是讓我具體的代碼工作,我可以編碼本次#以不同的方式,如果設備是一個ipad?我真的不想開始重新編碼ipad的不同方式,如果我可以幫助它。

任何想法都是值得歡迎的。 謝謝!

+0

爲什麼你需要2 hastags? – JamesHalsall

+0

2個功能,工作方式不同,分開,也一起工作。所以我不能有#project/img1 cos然後我可能會得到/ img1 ..這是最好的方法 –

回答

0

雖然問題已經很老了,但我還是想深入研究。可能還有人在同一個話題上掙扎。


雖然使用多個片段標識符是不explicitly illegal似乎使用一個以上是針對規範,它規定:

片段-ID如下整個對象的URL從它由散列符號(#)分隔。

因此,您可以爭辯說應該只存在一個散列符號。因爲接受和解析這種類型的多個字符的瀏覽器不能被依賴,因爲它是未定義的行爲。

相反,我會建議你建立你的片段標識符在一個不同的形式,你已經暗示。

http://www.URL.com/photography.html#project/img1 

在這種情況下,您可以使用一個簡單的表達式來獲取函數。

window.location.hash.split("/"); // yields ["project", "img1"]