历史版本5 :JS实现暂停和继续轮播报表 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 问题描述编辑

在开发大屏报表的时候,有时我们会加入多张大屏轮播的功能,这时我们希望在特定的情况下能停止轮播,特定情况下又继续轮播。若是设置按钮来控制轮播的暂停和继续,但是无端的多出一个按钮会使大屏的美观度大打折扣。

因此,我们可以在某一个控件上加入鼠标移入移出效果来控制,实现效果如下图:

222

2. 解决方法编辑

可以通过JS设置鼠标移入移出效果,以及FR自带的JavaScript延时函数,使页面在规定时间后执行跳转到另一不同页面来实现轮播。

3. 示例编辑

3.1 模板设置

打开模板:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\frm\轮播报表_1.frm

3.2 添加事件

1)选中report0控件,添加“初始化后”事件,如下所示:

222

function time(){ timer=setTimeout( function(){window.location.href="ReportServer?formlet=doc%2Ffrm%2F%5B8f6e%5D%5B64ad%5D%5B62a5%5D%5B8868%5D_2.frm"; //要轮播的报表url },2000); //轮播间隔 } time(); setTimeout(function(){ $("[widgetname=REPORT0]").mouseover(function(){ //这里的控件名要全用大写 clearInterval(timer); }) $("[widgetname=REPORT0]").mouseleave(function(){ time(); }) })

注:当把鼠标移到report0标题报表块时,停止轮播,鼠标移开后,又继续轮播。

2)在另外的轮播报表:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\frm\轮播报表_2.frm 也做相应设置!要轮播的url改为轮播报表_1.frm

4. 保存预览编辑

保存模板,点击预览,实现效果如上图。