jquery-plugins - 当不同目标的不同事件被触发时显示单个qtip?

标签 jquery-plugins jquery-selectors validation user-experience qtip

我的表单中几乎没有输入和选择控件,每个控件前面都有一个小问号图标,当鼠标悬停在该 gif 上时,在出色的 jquery jquery.qtip-1.0 的帮助下,该图标将显示工具提示。 0-rc3.js(带有 jquery-1.3.2.min.js)插件如下:

   $('#questionmark1').qtip({
        content: 'sample help content'
        , style: { name: 'sampleStyle' }
        , position: { corner: { target: 'bottomLeft', tooltip: 'rightTop'} }         
    });

我还想在相应的输入字段获得焦点时显示工具提示,并在模糊时隐藏。下面的一个可以解决这个问题,但当鼠标悬停在该 gif 上时不显示工具提示

  $('#questionmark1').qtip({
        content: 'sample help content'
        , style: { name: 'sampleStyle' }
        , position: { corner: { target: 'bottomLeft', tooltip: 'rightTop'} }         
         , show: { when: { target: $('#input1'), event: 'focus'} }
        , hide: { when: { target: $('#input1'), event: 'blur'} }
    });

但问题是像这样的东西不起作用。

  show: { when: { target: $('#input1'), event: 'focus'},
                { target: $('#questionmark1'), event: 'focus'} }

简而言之,前面的前两个代码块工作正常,我可以添加这两个代码块来实现我的目标,但我想以正确的方式做到这一点。
我如何定位多个目标的事件来显示单个工具提示?

最佳答案

您不必在对 qtip() 的调用中连接所有显示/隐藏事件。我将 mouseover 事件定义为默认触发 qtip 的事件:

$('#questionmark1').qtip({
      content: {text:'sample help content', prerender: true}
      , style: { name: 'sampleStyle' }
      , position: { corner: { target: 'bottomLeft', tooltip: 'rightTop'} }         
      , show: { when: 'mouseover' }
  });

(注意我添加的预渲染选项)

然后为要显示 qtip 的输入手动定义事件处理程序:

$("#input1").bind("focusin", function() {
    $("#questionmark1").qtip("show");
}).bind("blur", function() {
    $("#" + this.id + "-tip").qtip("hide");
});

请参阅此处的示例:http://jsfiddle.net/andrewwhitaker/wCgAM/

唯一奇怪的是,您可以通过聚焦第一个输入然后将鼠标悬停在第二个问号上来显示两个工具提示。不过,这可能很容易修复。

希望有帮助。

关于jquery-plugins - 当不同目标的不同事件被触发时显示单个qtip?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4493592/

相关文章:

javascript - 如何验证具有正则表达式和一些可接受值的文本字段的值 "0"或 "00"或 "000"

html - Fancy Zoom (jQuery Plugin) 图像没有缩放效果

javascript - 如何在 jQuery 插件中绑定(bind)此事件处理程序?

javascript - 如何选择名称数组中的所有元素?

jquery - 在行类 "b"之后获取类 "a"行的集合,直到下一个非 -"b"行?

regex - 多分隔符日期正则表达式

jquery - jQuery UI Widget 库是否可以让开发人员扩展 jQuery UI?

javascript - Bootstrap : change modal backdrop opacity only for specific modals

javascript - IE7 jquery 选择器返回 "Failed"

ruby - 是否可以在回形针中将附件设为可选?