图表联动白色下滑框

图表联动,通过点击费用基本情况的每个柱子,右边费用明细表显示不同费用类型不同状态的信息,当前表单对象设置如下图,数据表如下图,数据集如下图,点击柱子右边表跟着改变,但是会出现白色下滑框,怎么去掉呢,报表块js如下:

setTimeout(function() {

    //隐藏报表块report1的滚动条

    $("div[widgetname=REPORT1]").find(".frozen-north")[0].style.overflow = "hidden";

    $("div[widgetname=REPORT1]").find(".frozen-center")[0].style.overflow = "hidden";

}, 1000);


window.flag2 = true;

//鼠标悬停,滚动停止  

setTimeout(function() {

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

        window.flag2 = false;

    });


    //鼠标离开,继续滚动  

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

        window.flag2 = true;

    });


    var old = -1;

    var interval = setInterval(function() {

        if(window.flag2) {

            currentpos2 = $("div[widgetname=REPORT1]").find(".frozen-center")[0].scrollTop;

            if(currentpos2 == old) {

                $("div[widgetname=REPORT1]").find(".frozen-center")[0].scrollTop = 0;

            } else {

                old = currentpos2;

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

                $("div[widgetname=REPORT1]").find(".frozen-center")[0].scrollTop = currentpos2 + 1.5;

            }

        }

    }, 25);

}, 1000)

QQ截图20201123131827.png

FineReport 冰雨咖啡 发布于 2020-11-23 13:11 (编辑于 2020-11-23 13:51)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
luojian0323Lv7资深互助
发布于2020-11-23 13:40(编辑于 2020-11-23 13:55)

这是因为数据联动后,报表块的隐藏js失效了。

需要改一下报表块的js

第一段这里改成
setInterval(function() {

    //隐藏报表块REPORT0的滚动条

    $("div[widgetname=REPORT1]").find(".frozen-north")[0].style.overflow = "hidden";

    $("div[widgetname=REPORT1]").find(".frozen-center")[0].style.overflow = "hidden";

}, 200);
这么做的目的,就是把原来的延时,改成定时,定时时间足够小时。就可能达到你要的目的。


  • 冰雨咖啡 冰雨咖啡(提问者) 怎么修改呢,报表块js是跑马灯的js setTimeout(function() { //隐藏报表块report1的滚动条 $(\"div[widgetname=REPORT1]\").find(\".frozen-north\")[0].style.overflow = \"hidden\"; $(\"div[widgetname=REPORT1]\").find(\".frozen-center\")[0].style.overflow = \"hidden\"; }, 1000); window.flag2 = true; //鼠标悬停,滚动停止 setTimeout(function() { $(\"div[widgetname=REPORT1]\").find(\".frozen-center\").mouseover(function() { window.flag2 = false; }); //鼠标离开,继续滚动 $(\"div[widgetname=REPORT1]\").find(\".frozen-center\").mouseleave(function() { window.flag2 = true; }); var old = -1; var interval = setInterval(function() { if(window.flag2) { currentpos2 = $(\"div[widgetname=REPORT1]\").find(\".frozen-center\")[0].scrollTop; if(currentpos2 == old) { $(\"div[widgetname=REPORT1]\").find(\".frozen-center\")[0].scrollTop = 0; } else { old = currentpos2; //以25ms的速度每次滚动1.5PX $(\"div[widgetname=REPORT1]\").find(\".frozen-center\")[0].scrollTop = currentpos2 + 1.5; } } }, 25); }, 1000)
    2020-11-23 13:45 
  • luojian0323 luojian0323 回复 冰雨咖啡(提问者) 你把你的js放在你的问题中。不要这样直接粘贴,会有转义字符
    2020-11-23 13:48 
  • 冰雨咖啡 冰雨咖啡(提问者) 回复 luojian0323 已放
    2020-11-23 13:51 
  • 冰雨咖啡 冰雨咖啡(提问者) 把setTimeout改成setInterval就能实现了,谢谢
    2020-11-23 13:58 
  • 2关注人数
  • 302浏览人数
  • 最后回答于:2020-11-23 13:55
    请选择关闭问题的原因
    确定 取消
    返回顶部