1. 概述
1.1 預期效果
有時需要判斷當前登錄的環境是手機端還是電腦端,如下圖所示:
1.2 實現思路
可以通過 JavaScript 來實現判斷當前的設備類型:
navigator 是 JavaScript 中的一個獨立的對象,用於提供用戶所使用的浏覽器以及操作系統等信息,以 navigator 對象屬性的形式來提供。所有浏覽器都支持該對象。
而 navigator 對象有一個 userAgent 屬性,會返回用戶的設備操作系統和浏覽器的信息。 此時可以通過 userAgent 判斷是 H5 浏覽器還是 PC 浏覽器。
而 App 不能獲取 Window 的浏覽器對象 navigator 的。那麽可以在之前判斷是否存在 navigator,不存在即爲 App。
2. 示例
2.1 準備模板
新建模板,在「參數面板」中添加「按鈕控件」,修改按鈕名稱爲「當前設備類型」,如下圖所示:
2.2 添加事件
給「按鈕控件」添加一個「點擊」事件,如下圖所示:
JavaScript 代碼如下:
if(!window.navigator) {
FR.Msg.alert("提示","當前設備:移動端APP")
}
else{
if(/Mobile|Android|webOS|iPhone|iPad|Phone/i.test(navigator.userAgent)){
FR.Msg.alert("提示","當前設備:移動端H5");
}
else{
FR.Msg.alert("提示","當前設備:PC端");
}
}
2.3 效果預覽
保存模板,PC 端選擇「分頁預覽」,點擊按鈕時,就會彈出當前的設備類型,如上圖所示:
移動端預覽時,效果如下圖所示:
3. 模板下載
已完成模板可參見:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\JS判斷PC和移動設備類型.cpt
點擊下載模板:JS判斷PC和移動設備類型.cpt