在决策报表有多个报表块,需要实现跑马灯自动滚动效果,其中window.flag怎么使用的?

借用以下js代码,修改报名名称,实现了2个报表块的自动播放效果,但是其中一个报表块,鼠标移上后不会停止滚动,是不是window.flag有什么使用要求?求教,应该怎么使用这个方法,是不是有序号要求,如果是,那么怎么获取这个序号。以下代码需要怎么修改才能实现多个报表块分别控制的效果。

setTimeout(function() {

//隐藏报表块的滚动条 

    //获取报表块宽度

    var wid = ($("div[widgetname='REPORT_左下']").width() - 17) + 'px';

    //重置报表块宽度

    $("div[widgetname='REPORT_左下']").css('width', wid);

    //获取报表块高度

    var height = ($("div[widgetname='REPORT_左下']").height() - 16) + 'px';

    //重置报表块高度

    $("div[widgetname='REPORT_左下']").css('height', height);

}, 1000);

window.flag1=true;

var self1 = this;

//鼠标悬停,滚动停止

setTimeout(function() {

    $("div[widgetname='REPORT_左下']").find("#frozen-center").mouseover(function() {

        window.flag1 = false;

    });

 

    //鼠标离开,继续滚动

    $("div[widgetname='REPORT_左下']").find("#frozen-center").mouseleave(function() {

        window.flag1 = true;

    });

 

    var old = -1;

    window.interval = setInterval(function() {

        if (!self1.isVisible()) {

            return;

        }

        if (window.flag1) {

            currentpos1 = $("div[widgetname='REPORT_左下']").find("#frozen-center")[0].scrollTop;

            if (currentpos1 == old && 0!=currentpos1) {

                $("div[widgetname='REPORT_左下']").find("#frozen-center")[0].scrollTop = 0;

            } else {

                old = currentpos1;

                //以25ms的速度每次滚动1.5PX

                $("div[widgetname='REPORT_左下']").find("#frozen-center")[0].scrollTop = currentpos1 + 1.5;

            }

        }

    },

    25);

},

1000);

FineReport jieujieu 发布于 2022-1-3 15:04 (编辑于 2022-1-3 15:06)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
snrtuemcLv8专家互助
发布于2022-1-3 15:07(编辑于 2022-1-3 15:42)

就像你这样,window.flag1,window.flag2,window.flag3每个代码分开就可以啊

===============

Form213.rar

QQ录屏20220103154034.rar

  • jieujieu jieujieu(提问者) 我是这么分开来,修改了序号,但是第2个报表块,鼠标移动上去不能停止
    2022-01-03 15:28 
  • snrtuemc snrtuemc 回复 jieujieu(提问者) 我测试可以的啊,看修改答案demo和视频
    2022-01-03 15:40 
最佳回答
0
啊嘞嘞Lv5见习互助
发布于2022-1-4 19:03

你这个情况应该是,放了报表快用作背景或者其他的了吧,然后然后报表块在你要显示的报表快上面了,鼠标上去的时候是另一个报表快就错了。image.png

重叠的地方位置换一下看看。

  • jieujieu jieujieu(提问者) 经检查和置顶测试,不是重叠问题。测试发现,好像跟2个报表块之间有关系,报表块1和报表块2都类似设置,报表块1鼠标移上正常停止,报表块2不能停止,如果把报表块1删除,其他设置都不改,报表块2也可以鼠标移上正常停止。所以,怀疑2个报表块事件代码哪里有冲突?
    2022-01-09 11:35 
  • 啊嘞嘞 啊嘞嘞 回复 jieujieu(提问者) 那得检查检查是不是代码写出了?估计是小问题导致的
    2022-01-11 17:23 
  • 3关注人数
  • 445浏览人数
  • 最后回答于:2022-1-4 19:03
    请选择关闭问题的原因
    确定 取消
    返回顶部