我注意到a:visited
樣式不適用於通過JavaScript請求的鏈接。在一個標準的用戶點擊,雖然立即和隨後刷新完全相同的鏈接註冊訪問。我不確定這是否是jQuery Mobile(我第一次遇到它)的唯一性,還是這是我不知道的瀏覽器限制?A:未檢測到AJAX鏈接:訪問
回答
如果您希望它與歷史記錄一起工作並訪問鏈接樣式,則可能需要更改location.hash。
請記住,訪問過的鏈接基於瀏覽歷史隱私漏洞被Did You Watch Porn網站流行後,瀏覽器之間的訪問鏈接樣式工作有點不一致。
我知道a:visited的選擇器已從CSS3中移除,但經典行爲應該仍然存在。是的,location.hash被改變(後退和前進導航工作正常)。請參閱上面的演示鏈接。 – Nariman
a:visited
與任何指向瀏覽器歷史記錄中的URL的鏈接相匹配。
如果您使用AJAX取消導航到該URL,該URL將永遠不會在瀏覽器歷史記錄中結束。
您可以使用#
鏈接修復該問題。
謝謝,但請參閱上面的演示鏈接。 – Nariman
您可以隨時通過與a:visited共享樣式的ajax回調在鏈接上設置類。
a:visited
僅在鏈接「執行」時觸發。
到AJAX調用的鏈接通常返回'false'(散列解決方案(<a href="#">link</a>
)仍然返回false,否則用戶將跳轉到頁面頂部)。
這種方式鏈接永遠不會'執行',因此不被標記爲訪問。
謝謝。看起來有點奇怪,但我認爲你是對的。我的意思是瀏覽器確實向該頁面發出了請求,並且在隨後訪問該頁面時在其緩存中確實存在副本......直觀地說,這可以作爲訪問的資格。 – Nariman
好的,請不要更改a
元素的href
指向其他答覆者所說的哈希網址 - 這將打破用戶體驗。如果他們想要在新窗口中打開,那麼需要加載兩次,如果您更改了服務器端,它將會中斷搜索引擎和禁用js的用戶。
問題是,如果您使用散列將您的網站升級到RIA(富互聯網應用程序),那麼鏈接將指向mysite.com/page
,但實際上您訪問的是mysite.com/#/page
,因此您實際上並未訪問原始內容。
這裏的正確解決方案是使用HTML5 History API,它允許您直接更改URL並掛接到URL更改(因此不再需要散列)。你可以在這裏閱讀更多關於哈希值與hashbangs vs HTML5 History API的優缺點: https://github.com/browserstate/history.js/wiki/Intelligent-State-Handling - 它還包括示例代碼,用HTML5 History API升級你的網站。
jQuery Mobile計劃在未來使用HTML5 History API(目前正在開發),但現在我建議等待它實現。
- 1. UITextView未檢測到鏈接
- 2. UIWebview未檢測到鏈接
- 3. 在Chrome中檢測訪問的鏈接
- 4. Symfony FOSOAuthServerBundle:未檢測到訪問令牌
- 5. 未訪問MVC鏈接
- 6. 造型a:訪問過的鏈接
- 7. 鏈接檢測?
- 8. 超鏈接到在訪問
- 9. Raspberry PI版本1未檢測到未對齊的訪問
- 10. 檢測鏈接是否用於訪問頁面
- 11. Ajax回調後未檢測到點擊
- 12. ajax未檢測到圖像作物
- 13. 僅顯示未訪問的鏈接
- 14. 檢測超鏈接
- 15. 如何檢查鏈接已被訪問?
- 16. iOS 6 UITextView鏈接檢測問題
- 17. 谷歌未檢測到鏈接hreflang標籤
- 18. jQuery Tools Tooltip在鏈接點擊後未檢測到懸停
- 19. 訪問iframe鏈接
- 20. 訪問鏈接CSS
- 21. UITextview一次檢測到兩個鏈接
- 22. 鏈接到ajax div
- 23. Ember.js測試:關注<a>鏈接
- 24. 將背景添加到未訪問的鏈接
- 25. iOS a:訪問的鏈接顯示默認的紫色
- 26. a:在JSF 1.2中訪問過不能使用h:commandLink的鏈接
- 27. 多個鏈接< a >訪問相同的JQuery方法
- 28. a:訪問過的鏈接 - 不透明不起作用
- 29. Java serversocket未檢測到丟失連接
- 30. Android檢測到未接來電
您能告訴我們代碼嗎?我猜這個錯誤可能是在事件中「返回假」。由於返回錯誤,默認操作被阻止,並且它沒有像您實際訪問鏈接那樣註冊。 –
jQuery Mobile上下文中的任何標準都展示了這一點 - 您可以查看演示網站並在其中插入:visited樣式以查看行爲:http://jquerymobile.com/demos /1.0a3/。 – Nariman