我的應用程序的前端設計用於非常舊的瀏覽器。我想升級到Bootstrap 3和JQuery 2,但我不想停止支持舊的瀏覽器。如何根據用戶的瀏覽器爲舊版本或新版本提供服務?我應該這樣做嗎?我基本上需要每個腳本,模板和視圖的2個版本嗎?根據用戶的瀏覽器版本提供不同版本的文件
0
A
回答
0
看看requirejs。使用requirejs,你應該能夠編寫一些邏輯服務於不同版本的文件,具體取決於瀏覽器
0
我建議你推遲對傳統瀏覽器的支持,並針對前向引擎開發。原因是,你可能花費3周時間來爲幾個月後將被棄用的IE版本添加支持。還有額外的努力!
您應該能夠針對相同的依賴關係運行構建工具,使用不同的版本。
如果您使用npm
,那麼你可以簡單地分配兩個不同的package.json
文件,edge.json
,legacy.json
,然後符號鏈接,安裝依賴,並分別建立相應的靜態資產。
骯髒的例子:
git clone --reference app edge
git clone --reference app legacy
ln -s edge/edge.json edge/package.json
ln -s legacy/legacy.json legacy/package.json
現在,在瓶,你必須找出用戶代理,解決無論是邊緣還是舊版瀏覽器,然後返回一個HTML文件,該文件將引用資產從適當的根。您應該在您的響應標題中設置Vary: User-Agent
。
相關問題
- 1. 根據瀏覽器加載不同版本的jquery
- 2. 在HtmlUnitDriver中提供瀏覽器版本的用處是什麼
- 3. 瀏覽器的JavaScript版本
- 4. 用戶代理瀏覽器版本
- 5. 根據IE版本加載不同的腳本版本
- 6. 如何根據瀏覽器版本給出條件cellpadding值?
- 7. 瀏覽器版本檢測
- 8. WPF WebBrowser瀏覽器版本
- 9. 瀏覽器版本jQuery中
- 10. Matlab瀏覽器版本
- 11. Flash版本跨瀏覽器
- 12. 基於瀏覽器版本
- 13. 瀏覽器版本測試
- 14. 未提供HTML文件的新版本
- 15. 相同的瀏覽器版本,2個不同的javascript處理
- 16. UserAgentUtils始終提供空瀏覽器版本
- 17. 如何根據瀏覽器版本捆綁特定的CSS?
- 18. 根據ruby版本捆綁開發寶石的不同版本
- 19. php版本顯示不同的應用程序/瀏覽器
- 20. 跨不同操作系統的相同瀏覽器版本
- 21. PHP:根據瀏覽器提供不同的圖像?
- 22. 如何安裝不同版本的sqlite而不是提供的版本
- 23. TortoiseSVN版本庫瀏覽器不工作
- 24. 如何根據Drupal中的Cookie提供不同的緩存版本的頁面?
- 25. 不同版本的IE瀏覽器在Joomla上的問題
- 26. 根據ASP.NET中的IE版本選擇不同的CSS文件
- 27. 爲特定ie版本提供flash版本otherwse提供js版本
- 28. 在github的版本和本地文件版本之間的網頁瀏覽量不同
- 29. 根據使用的插件使用不同版本的Python包
- 30. 瀏覽器緩存版本的Tampermonkey
最好的做法是:不要。要麼支持支持舊版本的庫,要麼刪除舊版本的支持。不要試圖檢測用戶的瀏覽器,這種方式是瘋狂的。 – davidism
這聽起來像一個維修噩夢。您最終會維護兩個(或更多)版本的應用。 – joews
一個評論;一般來說,強烈避免瀏覽器檢測。但是,特徵檢測很好, [Modernizr.js](https://modernizr.com/)可能會有所幫助。 – JonathanHayward