决策报表跑马灯,鼠标悬浮停止,跑完一段时间之后,又不跑了,进度条也显示上去了

image.pngimage.png

if(window.interval){clearInterval(window.interval);}//判断之前是否执行过该代码,如果有,就停止之前的执行

setTimeout(function() {

       //隐藏报表块report0的滚动条(此报表块名为report0,根据具体情况修改)

    $("div[widgetname=REPORT0]").find(".frozen-north").css({

        'overflow-x':'hidden',

        'overflow-y':'hidden'

    });

    $("div[widgetname=REPORT0]").find(".frozen-center").css({

        'overflow-x':'hidden',

        'overflow-y':'hidden'

    });

 

},1000);

 

window.flag1 = true;

var self1 = this;

//鼠标悬停,滚动停止

setTimeout(function() {

    $("div[widgetname=REPORT0]").find(".frozen-center").mouseover(function() {

        window.flag1 = false;

    });

 

    //鼠标离开,继续滚动

    $("div[widgetname=REPORT0]").find(".frozen-center").mouseleave(function() {

        window.flag1 = true;

    });

    var isDown1 = true;

    var camera= $("div[widgetname=REPORT0]").find(".frozen-center")[0];

    window.interval = setInterval(function() {

        if (!self1.isVisible()) {

            return;

        }

        if (window.flag1) {

              if (isDown1) {

                camera.scrollTop++; //下降

                //如果滚动条超过100的话,就往上

                //可以修改这个条件,作为折返的前提

                if (camera.scrollTop+camera.clientHeight > camera.scrollHeight-1) {

                    isDown1 = false;

                }

            } else {

                 camera.scrollTop--; //上升

                //到达顶部的话,就下降

                if (camera.scrollTop == 0) {

                    isDown1 = true;

                }

            }

        }

    },

    25);//移动的速度

},

1000);

FineReport 帆软用户mVQ2gDxk8Q 发布于 2023-11-10 16:23
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
GGGGGGGGGLv5初级互助
发布于2023-11-10 16:30

建议用帆软的跑马灯接口

跑马灯接口: https://help.fanruan.com/finereport/doc-view-4299.html?source=4

image.png

  • 帆软用户mVQ2gDxk8Q 帆软用户mVQ2gDxk8Q(提问者) 不行啊,我用了这段,还是拍完了我表里的数据后,就不动了,进度条也出来了 setTimeout(function(){ _g().getWidgetByName(\'report0\').startMarquee(); }, 500);
    2023-11-10 16:35 
  • GGGGGGGGG GGGGGGGGG 回复 帆软用户mVQ2gDxk8Q(提问者) 想了几种可能,1、模板长时间没操作导致页面失效,这时刷新页面就行;2、报表块有进行过刷新,这样也会导致跑马灯失效,这时需要在控件添加编辑结束后事件,在里面方式跑马灯的代码;
    2023-11-10 17:05 
  • 帆软用户mVQ2gDxk8Q 帆软用户mVQ2gDxk8Q(提问者) 回复 GGGGGGGGG 那再 项目 的编辑结束后加上setTimeout(function(){ _g().getWidgetByName(\\\'report0\\\').startMarquee(); }, 500);这个吗?
    2023-11-10 17:09 
  • GGGGGGGGG GGGGGGGGG 回复 帆软用户mVQ2gDxk8Q(提问者) 是的
    2023-11-10 17:10 
  • GGGGGGGGG GGGGGGGGG 回复 帆软用户mVQ2gDxk8Q(提问者) 这个时间建议长一点,3至5秒,有时会因为网络问题刷新时间会长一些
    2023-11-10 17:12 
  • 2关注人数
  • 179浏览人数
  • 最后回答于:2023-11-10 16:30
    请选择关闭问题的原因
    确定 取消
    返回顶部