[問題] 如何點擊超連結後而不讓畫面閃爍一下

作者: red0whale (red whale)   2015-05-26 21:57:01
就像youtube一樣,請隨便點一個連結,你將會發現畫面在點擊連結之後並不會閃爍一下才
進入下一頁面,而是很平順直接地就進入下一頁面了,但明明網址有改變啊,為什麼它可
以直接就進入下一頁面而不讓畫面閃爍呢? 它也沒用框架呀,但是即使用了框架某部分的
子框頁也會閃爍一下啊,但是youtube卻是很直接地就過去了,它是怎麼辦到的?
作者: mmis1000 (秋月戀楓)   2015-05-26 23:45:00
PJAX <- google it please
作者: bbcust (bbcust)   2015-05-27 12:03:00
spa
作者: mrbigmouth (大嘴先生)   2015-05-27 13:55:00
history.pushState
作者: red0whale (red whale)   2015-05-27 13:57:00
各位,雖然我知道是PJAX做出來的,但是該怎麼做? 各位有範例可以提供給我嗎?請問jquery的$(document).pjax({...});要怎麼用? 上網找好像都找不到耶 因為根本沒有範例可以給我參考
作者: mrbigmouth (大嘴先生)   2015-05-27 16:51:00
pjax要有後端配合jQuery本身沒有pjax method 不過有套件https://github.com/defunkt/jquery-pjax其實你就把上面大家提的關鍵字去google一定有做法啦要注意的是這種東西都是前後端都要做才能辦到的不是很簡單的東西 請有點耐心慢慢學
作者: mmis1000 (秋月戀楓)   2015-05-28 03:35:00
那2個字就是全部了阿,就是用ajax把內容讀進來目前網頁然後用pushState更新網址而已啊,真的不是特別技術當然需要些後端code讓網址跟內容能一致就是了
作者: mrbigmouth (大嘴先生)   2015-05-28 09:52:00
不是特別技術 但對於會這樣問問題的原po應該還有很多科技術要爬 XDD
作者: mmis1000 (秋月戀楓)   2015-05-28 10:34:00
嚴格是PJAX也不一定要後端,也是有用 #hash 當網址的作法,程式讀到 hash 再用 ajax 跟伺服器撈資料更正 不一定要後端 -> 不一定要 pushState有時候會看到網址長這樣的 /#!/somehashs 的# 後面其實就是hash tag
作者: mrbigmouth (大嘴先生)   2015-05-28 14:11:00
hash資料不會被瀏覽器送到後端 這樣做就沒辦法SEO了對搜尋引擎而言每頁都長一樣 pushState有做好後端則無此問題
作者: mmis1000 (秋月戀楓)   2015-05-28 15:38:00
那個基本上是當成不支援pushState的fallback用吧?
作者: mrbigmouth (大嘴先生)   2015-05-28 15:49:00
不支援pushState的瀏覽器管他去死 (問題發言)
作者: tomin (Schrödinger's cat)   2015-05-29 12:31:00
#!是為了給SEO爬 不然早期都只有用#當然後端能直接吐內容會更理想
作者: lolikung (幹麼查我?)   2015-06-01 00:37:00
樓上大大,有 #! 的相關資料可提供參考嗎 感謝 :D
作者: s25g5d4 (function(){})()   2015-06-01 00:51:00
關鍵字 hashbang
作者: eight0 (欸XD)   2015-06-01 07:17:00

Links booklink

Contact Us: admin [ a t ] ucptt.com