js跳转悬停问题,大佬们,帮我看下。

地图和报表块联动,点击地图,给报表块传区域名称参数。

目前的问题是,页面初始化js跑马灯是正常的,点击地图区域名称,报表块刷新后,跑马灯效果在,但是鼠标悬停不在了,同时,如果该区域的数据未填充满报表块,下次点击其他区域(填充满报表块)后,跑马灯效果失效。请问该如何解决?

目前的js:

if(window.interval1){

clearInterval(window.interval1);

window.flag2=true;

}

setInterval(function(){ 

$("div[widgetname=REPORT1]").find("#frozen-center").css('overflow-x', 'hidden'); 

$("div[widgetname=REPORT1]").find("#frozen-center").css('overflow-y', 'hidden');

$("div[widgetname=REPORT1]").find("#frozen-north").css('overflow-x', 'hidden');

$("div[widgetname=REPORT1]").find("#frozen-north").css('overflow-y', 'hidden');

$("div[widgetname=REPORT1]").find(".reportContent").css('overflow-y', 'hidden');

$("div[widgetname=REPORT1]").find(".reportContent").css('overflow-x', 'hidden');

},100); 

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

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

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; 

}) 

//鼠标离开,继续滚动 

$(".frozen-center").mouseleave(function() { 

window.flag2 = true; 

}); 

var old=-1; 

window.interval1=setInterval(function() 

if(window.flag2){ 

currentpos=$(".frozen-center")[0].scrollTop; 

if (currentpos==old){ 

$(".frozen-center")[0].scrollTop=0; 

else { 

old=currentpos; 

$(".frozen-center")[0].scrollTop=currentpos+1; 

},55); 

//

},500)

柒年呀 发布于 2021-8-17 17:02 (编辑于 2021-8-17 17:04)
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
柒年呀Lv5见习互助
发布于2021-8-17 19:10

setInterval(function() {

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

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

'overflow-x': 'hidden',

'overflow-y': 'hidden'

});

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

'overflow-x': 'hidden',

'overflow-y': 'hidden'

});

}, 1000);

window.flag1 = true;

var self1 = this;

//鼠标悬停,滚动停止

setTimeout(function() {

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

window.flag1 = false;

});

//鼠标离开,继续滚动

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

window.flag1 = true;

});

var old = -1;

var interval = setInterval(function() {

if (!self1.isVisible()) {

return;

}

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

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

'overflow-x': 'hidden',

'overflow-y': 'hidden'

});

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

'overflow-x': 'hidden',

'overflow-y': 'hidden'

});

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

window.flag1 = false;

});

//鼠标离开,继续滚动

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

window.flag1 = true;

});

if (window.flag1) {

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

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

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

} else {

old = currentpos1;

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

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

}

}

},

55);

},

1000);

  • 0关注人数
  • 325浏览人数
  • 最后回答于:2021-8-17 19:10
    请选择关闭问题的原因
    确定 取消
    返回顶部