Aem 有没有办法确定我们是在TouchUI中打开了页面,还是在javascript中打开了经典UI

Aem 有没有办法确定我们是在TouchUI中打开了页面,还是在javascript中打开了经典UI,aem,Aem,有没有办法确定我们是用触摸界面还是用javascript的经典界面打开了这个页面 就像我们在经典UI中一样,我们可以确定页面是处于编辑模式还是设计模式 CQ.WCM.editMode 请建议。您只需读取cq创作模式的cookie值即可。它可以是CLASSIC或TOUCH var isTouch = $.cookie('cq-authoring-mode') === 'TOUCH' 另一种方法是寻找优秀的JS对象,如Granite.UI。当创建对象的clientlib将附加到其他模式时(例如,

有没有办法确定我们是用触摸界面还是用javascript的经典界面打开了这个页面

就像我们在经典UI中一样,我们可以确定页面是处于编辑模式还是设计模式

CQ.WCM.editMode

请建议。

您只需读取
cq创作模式的cookie值即可。它可以是
CLASSIC
TOUCH

var isTouch = $.cookie('cq-authoring-mode') === 'TOUCH'
另一种方法是寻找优秀的JS对象,如
Granite.UI
。当创建对象的clientlib将附加到其他模式时(例如,通过AEM修补程序或在开发过程中无意识地),这可能会很痛苦


如果您不限制在javascript中确定ui模式,以下是其他方法:

  • 如果您有组件的模型类,请检查此项 条件:

    AuthoringUIMode.TOUCH.equals(AuthoringUIMode.fromRequest(getRequest()))
    
  • 要从JSP进行检查,请使用以下代码:

    Placeholder.isAuthoringUIModeTouch(slingRequest)
    
  • Placeholder.isAuthoringUIModeTouch(slingRequest)