使用SUI框架下的標簽點擊跳轉頁面不刷新的問題


最近寫好了幾個頁面,今天試着將各個頁面的鏈接打通,然后問題就來了...(╯︵╰)

這里看一下原來想要實現的兩個頁面跳轉的效果--點擊圖一標注的欄目可以跳轉到一個新的頁面圖二...

按照之前寫a標簽的跳轉鏈接那樣,直接輸入相對路徑,然后測試~

頁面跳轉后出來的是圖三,樣式都沒了???刷新看看,然后圖二就出來了!

                 

以為是瀏覽器反應慢的原因,然后拿其他頁面做同樣的測試,結果也是這樣.....

然后試着不要SUI框架直接寫個簡單的頁面測試,咦,可以正常跳轉刷新,所以就猜想問題出在使用了框架這里!

 

這里先說一下本人解決這個問題的思路:

  

  首先想到SUI提供的工具欄(上圖)就是可以正常跳轉刷新的a標簽,對比它們與其他a標簽的不同之處,我發現的它們多了class=“external”屬性值.

  所以就試着給測試的a標簽加上這個屬性,發現頁面正常跳轉刷新了 φ(>ω<*)  開心啊 !

 

解決方法: 在a標簽中加上屬性值 class=“external”.

 

接下來看一下SUI的sm.js源碼(看得不是很懂),所以再去百度一下,終於知道這個問題的原因啦.

原因: SUI框架的Router默認開啟,會自動攔截所有鏈接的Touch行為,如果希望一個鏈接走瀏覽器原生跳轉而不使用router,可以在鏈接上增加 class="external". (或者自定義屬性)

如果需要禁用路由功能,那么可以在 zepto 之后, msui 之前使用 script $.config = {router: false} 來禁用.

 

由於個人經驗及掌握的太有限了,所以很多問題理解的不是很深,需要在這方面不斷的探索與積累~

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM