设施 API (sap.ui.Device) 是一个 API,它提供无关设施细节的信息,例如操作系统及其版本、浏览器和浏览器版本、屏幕尺寸、以后方向以及对特定性能的反对,如触摸事件反对,方向变动等等。
例如,sap.ui.Device.orientation
对象保留以后方向信息:
- Landscape: 批示以后方向是否为横向的标记
- Portrait:批示以后方向是否为纵向的标记
看个具体的例子:
咱们在 Chrome 开发者工具 Console 面板里输出 sap.ui.Device.orientation
,即可失去 landscape 等于 true 的后果,阐明以后运行 SAP UI5 利用的设施布局为 landscape.
例如,如果想为特定事件(如调整大小或方向更改)注册处理程序,能够通过附加到此类事件来轻松实现:
sap.ui.Device.orientationChange.attachHandler(function(){alert("orientation changed");
});
两者都能够跨平台工作,即便在设施自身不反对方向更改事件的状况下也是如此。
如果您想在代码中查看某个零碎类别(手机、平板电脑、台式机),您能够询问 sap.ui.Device.system.phone
的值,如果您正在应用 Phone 设施拜访该页面,该值将设置为 true.
看个具体的例子:
上图阐明咱们是通过电脑端即 Desktop 拜访的 SAP UI5.
留神:分类基于各种因素,例如屏幕尺寸、触控性能、操作系统和用户代理。依据设施上的性能组合,可能会产生多个标记设置为 true 的状况。
同样,还能够查看以后设施或浏览器的不同浏览器、不同操作系统和可用性能。
sap.ui.Device.media 下提供了屏幕宽度更改事件的 API。它容许您将处理程序附加到特定距离之间的屏幕宽度变动。每当遇到这样的距离时,就会在页面上的 HTML 根标记中增加某个 CSS 类。对于典型宽度,这些距离有预约义的范畴集。主动初始化的标准集如下:
- SAP_3STEPS:3 步范畴集 (S-L)
- SAP_STANDARD_EXTENDED:4 步范畴集(电话、平板电脑、台式机、大型桌面)