找回密码
 立即注册

QQ登录

只需一步,快速开始

JS自动播放数据点提示(试用大屏)

我是社区第69081位番薯,欢迎点我头像关注我哦~
最近做大屏,需要用到自动播放数据点提示。PS:数据不变化时,也要求循环播放数据点提示。
首先,我开启了图形上自带的“自动数据提示功能”,但是这个功能是数据发生变化,才会显示数据提示,不太符合我的需求。
然后,搜索了帮助文档,找到了相关的资料:[新]自动播放数据点提示-http://help.finereport.com/doc-view-2087.html
这个是用一个按钮来控制是否启用自动播放的功能,但是大屏上显示按钮不太合适,所以需要在此方案的基础上稍作改变。(个人JS比较渣,非常感谢帆软客服1027和技术人员的耐心解答)
环境:FR8.0,表单
步骤:
(1)在表单上放一个按钮,然后按钮上添加一个点击事件,代码如下(与帮助文档上的写法一致,只是增加了一个延时,因为我的表单上有一个背景图片,加载会慢,不加延时,JS会报错)
  1. setTimeout(function(){
  2. var vanchart = FR.Chart.WebUtils.getChart('chart0').vanCharts.charts[0],
  3. openAutoTooltipCarouselDelay = 1000;
  4. openAutoTooltipCarousel();

  5. function openAutoTooltipCarousel(ele){
  6. var series = vanchart.series; // 获取chart下的所有系列
  7. // 获取系列第一个系列的所有数据点
  8. // 注意,每次只能显示一个数据点提示,如果需要显示多个数据点的提示内容,可以在plotOptions里面开启数据提示共享
  9. var points = series[0].points,
  10. pointsLen = points.length;
  11. // 默认的提示轮播从第一个点开始
  12. var pointIndex = 0;

  13. window.openAutoTooltipCarouselTimer = setInterval(function (){
  14. // 遍历series下面每个系列的点
  15. // 使用vanchart.showTooltip依次展示不同索引的数据点
  16. vanchart.showTooltip(points[pointIndex]);

  17. pointIndex < pointsLen - 1 ? pointIndex++ : pointIndex = 0;

  18. }, openAutoTooltipCarouselDelay)
  19. }
  20. },1000);
复制代码
(2)在form上,增加一个初始化事件,实现点击按钮的操作,代码如下:
  1. setTimeout(function(){
  2.         var Widget = this.options.form.getWidgetByName("button0");
  3.         },1000);
复制代码
然后点击预览,就可以了。可详见附件。
方法由在线技术支持的客服1027(不知道名字)提供,我先点个赞。

----------------------------------------------------------分割线--------------------------------------------------------------------
补充:
刚刚按照女神@cherishdqy说的方式试过了,把代码直接放在表单的form或body的初始化事件里就可以实现了,很方便,比上面说的方法简单 编辑于 2017-11-22 10:13  
编辑于 2017-11-22 10:13  
参与人数 +2 F豆 +176 理由
糕沫酱 + 10 太棒了,给你 32 个赞,么么哒
兔子酱 + 166 感谢苍苍老师的分享

查看全部评分

发表于 2017-11-21 18:30:23
先点赞为敬

使用道具 举报

发表于 2017-11-21 19:36:56

使用道具 举报

发表于 2017-11-21 20:31:22
大屏上自动播放只要把按钮里的代码放到body的初始化事件里就好了。
还是谢谢苍苍的分享,这种心得体会都值得点赞

使用道具 举报

发表于 2017-11-21 20:35:39
来自手机
cherishdqy 发表于 2017-11-21 20:31
大屏上自动播放只要把按钮里的代码放到body的初始化事件里就好了。
还是谢谢苍苍的分享,这种心得体会都值 ...

明天去试下,JS水平太差

使用道具 举报

发表于 2017-11-21 20:44:03

使用道具 举报

发表于 2017-11-21 21:50:02
前排都被你们占满了。我来晚了。。

使用道具 举报

发表于 2017-11-21 22:59:43
来自手机
学习中

使用道具 举报

发表于 2017-11-22 13:00:37
正缺这个呢,上周的遗留问题

使用道具 举报

发表于 2017-11-22 13:31:59
糕沫酱 发表于 2017-11-22 13:00
正缺这个呢,上周的遗留问题

哈哈,我之前也被困扰了好一阵,结果高手们一句话就解决了

使用道具 举报

发表于 2018-5-11 23:08:59
学习了  谢谢

使用道具 举报

发表于 2018-9-6 19:57:16
cherishdqy 发表于 2017-11-21 20:31
大屏上自动播放只要把按钮里的代码放到body的初始化事件里就好了。
还是谢谢苍苍的分享,这种心得体会都值 ...

请问这个功能可以在移动端的地图实现吗? 我现在做的在电脑端可以实现,但是在移动端会报JS错误

使用道具 举报

发表于 2018-9-7 08:37:20

使用道具 举报

发表于 2018-9-11 08:22:46
来自手机
厉害啊

使用道具 举报

发表于 2020-1-7 14:08:57
可不可以在地图上再显示出省份的点呢

使用道具 举报

发表于 2020-1-7 14:32:02
谢谢

使用道具 举报

发表于 2020-1-7 14:46:15
Honam596 发表于 2020-1-7 14:08
可不可以在地图上再显示出省份的点呢

你是说地图数据点提示吗?
地图点提示.frm (52.6 KB, 下载次数: 5)

使用道具 举报

发表于 2020-4-21 15:20:36
组合图数据点可以自动播放吗

使用道具 举报

发表于 2020-4-21 16:24:47
在雨中等雨停 发表于 2020-4-21 15:20
组合图数据点可以自动播放吗

柱线图数据点自动播放.frm (77.45 KB, 下载次数: 5)

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

联系社区管理员|联系帆软|《帆软社区协议》|手机版|帆软社区|Copyright © 帆软软件有限公司 ( 苏ICP备18065767号-7 )

GMT+8, 2022-10-3 17:21 , Processed in 0.263577 second(s), 90 queries , Gzip On.

返回顶部 返回列表