0

当使用任何类型的 jQuery UI 控件(即:jQuery 滑块控件)时,如果在传递 iFrame 时释放 mouseup,该控件将保持活动状态。活跃,我的意思是就像你从来没有鼠标一样。

我正在构建一个在 1 个区域使用 iFrame 的应用程序,因此这已成为一个大问题。有没有办法解决这个问题?

4

3 回答 3

0

您是否尝试过 iframeFix 助手?它在 iframe 上放置一个透明屏幕。我已经将它与可拖动/可放置的 UI 一起使用。不确定滑块控件。

http://api.jqueryui.com/draggable/#option-iframeFix

如果这不起作用(无法看到代码),我的猜测是问题出在与 iframe 的交互上。当您将鼠标悬停在 iframe 上时,它会与父 DOM 中的事件处理程序混淆,就像将鼠标移出浏览器窗口本身一样。

您是否尝试将自己的透明层放在 iframe 上?

于 2012-11-12T12:47:05.263 回答
0

我选择了一个基本的计时器解决方案,我尝试了其他方法,但它似乎使滑块变得迟缓

// fix for jq-ui slider not releasing outside of iframe
$(document).on('mouseout', 'body', function(){
        outOfFrame = true;
});

$(document).on('mouseover', 'body', function(){
        outOfFrame = false;
});

setInterval(function(){

    if(outOfFrame) {
         $('#wrap').trigger('mousedown').trigger('mouseup');
    }

}, 1500);
于 2013-07-26T09:02:38.323 回答
0

这个线程很旧,但我最近自己也遇到了这个问题,这就是解决我在 Internet Explorer 上 iframe 中的 jquery ui 滑块问题的原因。

$("#wrapper").mouseleave(function (){
   $('#wrapper').trigger('mousedown').trigger('mouseup');
})
于 2016-03-04T11:59:57.887 回答