反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

键盘事件控制场景地图切换场景

  • 文档创建者:Leo.Tsai
  • 历史版本:3
  • 最近更新:Alicehyy 于 2022-08-19
  • 1. 概述

    1.1 应用场景

    用户实际使用 场景地图 时,可能需要通过翻页笔或者键盘上下键来控制场景切换,那么该如何实现呢?

    1615791222696552.png

    1.2 实现思路

    大屏场景下,通过给决策报表的 body 添加初始化后 JavaScript 事件,给场景地图绑定键盘的上下键事件, 监听上键跳转上一个场景, 下键跳转下一个场景。

    注:支持在场景地图轮播的同时使用键盘事件控制场景切换。

    注:不支持移动端。

    2. 示例

    2.1 准备模板

    此处直接使用 场景切换地图示例 中的模板。

    可以直接在设计器中查找:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\demo\chart\extend\场景切换地图.frm

    也可以点击此处直接下载:场景切换地图 .frm

    2.2 添加事件

    给决策报表的 body 添加一个初始化事件,如下图所示:

    1615793237418690.png

    JavaScript 代码如下:

    document.addEventListener('keydown', e => {
         
        //获取图表对象实例
        var chartBridge = Van.Utils.getChartBridge({name:'chart0'});
     
        if (chartBridge && e.keyCode === 38) {//遥控器的上 对应键盘的上keyCode=38 左 37 右 39
            console.log('up');
             
            //切换至上一个场景
            chartBridge.switchScene({direction:'previous'});
            //可以根据自己的需求绑定不同的js事件 比如tab组件切换切换到tab0:
            //_g().options.form.getWidgetByName("tabpane0").showCardByIndex(0);
     
        } else if (chartBridge && e.keyCode === 40) {//遥控器的下 对应键盘的下keyCode=40
            console.log('down');
             
            //切换至下一个场景
            chartBridge.switchScene({direction:'next'});
            //可以根据自己的需求绑定不同的js事件 比如tab组件切换到tab1:
            //_g().options.form.getWidgetByName("tabpane0").showCardByIndex(1);
        }
         
    });

    3. 模板下载

    已完成模板参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Advanced\Chart\键盘事件控制场景地图切换场景.frm

    点击下载模板:键盘事件控制场景地图切换场景.frm

    附件列表


    主题: 图表应用
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526