如果在其中单击并按住,则始终关注元素

时间:2016-04-15 18:28:22

标签: javascript jquery cross-browser

我正在使用qtip jquery插件,遇到了一个奇怪的问题。我有一个滚动的大“工具提示”。在这里摆弄:http://jsfiddle.net/yu9tb1wn/

在Firefox中如果我点击并尝试选择文本,当我从顶部或底部离开时,div将滚动。这是期望和期望的,因为这是大多数窗户的行为。

然而,在IE和Chrome中,工具提示消失了,因为它应该在mouseleave上消失。

如何让IE和Chrome的行为像Firefox一样?也许我需要使用一些我不知道的事件。

如果你在不同的浏览器中尝试这个小提琴,尝试选择所有文本,你应该看到我正在谈论的行为。

简单的qtip代码:

 $('a[title]').qtip({
    hide: {
    delay:250,
      fixed: true,
    }
  });

2 个答案:

答案 0 :(得分:1)

我设法在Chrome上完成这项工作:http://jsfiddle.net/d6b5wmLk/12/

var b = true;
  $('a[title]').qtip({
    hide: {
        delay:250,
      fixed: true,
    },
    events: {
        hide: function(event, api) {
            if(!b) {
              event.preventDefault();
            }
        }
    }
  });
    $( "html" ).mousedown(function() {
    b = false;
    });
  $( "html" ).mouseup(function() {
    b = true;
    $('a[title]').qtip('hide');
    });

答案 1 :(得分:0)

我正在寻找和图书馆,我相信你可以增加延迟一点来实现这一目标。但除此之外,我没有看到任何其他方式没有修改库