[英]Make a #-tag javascript link word for non javascript
使用以下教程,我希望我的網站使用AJAX加載內容(但也希望能夠使用后退按鈕等): http : //www.queness.com/post/328/a-simple- Ajax驅動-網站與- jqueryphp
當然,如果有人禁用了javascript,則該網站也可以正常工作(不使用Ajax)。
但是,當啟用JavaScript的用戶向未啟用JavaScript的用戶發送鏈接時,就會出現問題。 由於禁用了javascript,它將無法正確處理#標簽,而只會轉到首頁(因此,無法直接將頁面從javascript用戶鏈接到非javascript用戶)。 有沒有一種方法可以解決此問題(最好是php或htacces)。
HTML5為我們提供了無需刷新頁面即可更改URL的方法https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history#Adding_and_modifying_history_entries
這意味着您可以在不刷新頁面的情況下更新某些內容,但仍為用戶提供一個他們可以添加書簽或發送給其他人的網址。 只要您在這些位置有頁面,或者正在使用mod_rewrite或類似內容捕獲它們,這些URL就可以在沒有JavaScript的情況下工作。
https://github.com/browserstate/history.js是一個很棒的小插件,如果瀏覽器支持,它將使用HTML5歷史記錄,否則(Internet Explorer)它將更改URL的哈希。
基本上,三個步驟:
<a href='about'>About us</a>
<a>
標記上的所有click
事件,然后導航至#
+ this.href
。 因此,當他們單擊上面的URL時,您導航到site.com/#about
而不是site.com/about
由於您照常編寫html代碼,因此非js用戶(更重要的是搜索引擎的bot)仍然可以完全訪問該網站。
針對這些評論,我可以提出以下建議:
site.com
重定向到site.com/js/
<a href='about'>
時,導航至site.com/js/#about
<a id=about href="/about">click here</a>
功能 為什么不正常地構建您的應用程序,然后在頂部添加AJAX,而不是反過來又為您自己做更多的工作呢?
問問自己,為什么需要AJAX頁面轉換? 您的應用程序實際上需要它們嗎,還是僅僅因為您在其他網站(例如Twitter)上看到過它?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.