javascript - JQuery Tooltipster 插件不在 html 内容中显示带有超链接的工具提示

标签 javascript jquery jquery-plugins tooltip tooltipster

我按照官方文档的说明操作:

http://iamceege.github.io/tooltipster/#htmlcontentalt

一切正常。我在内容中添加的唯一额外内容是一个“a”标签,如下所示:

这是html代码:

<a class="tooltip-container">
    This div has a tooltip with HTML when you hover over it!
    <span class="tooltip_content">
      <a href="#"></a><img src="myimage.png" /> <strong>This is the content of my tooltip!</strong>
    </span>
</a>

这是 JavaScript 代码:

$('.tooltip-container').tooltipster({
  functionInit: function (instance, helper) {
    var content = $(helper.origin).find('.tooltip_content').detach();
    instance.content(content);
  }
});

这是 JSFiddle:

https://jsfiddle.net/c3ddf8bm/7/

不幸的是,工具提示什么也没显示!

注意:我在最新版本的 Chrome 和 IE 中对其进行了测试。

更新:

跟随 xorspark 和 Josh Whitlow 的 fiddle ,我意识到这个问题只发生在主要的“tooltip-container”是超链接本身时。我认为将其定义为超链接或其他标签是有意义的,客户端可以使用键盘将其聚焦,否则我认为它将存在可访问性问题。

最佳答案

你的问题是你的 anchor 中有一个嵌套的 anchor 。虽然这可能是可能的,但我强烈建议删除内部 anchor 标记,或者只有一个内部 anchor 标记并使容器成为一个 span。

this post 所示,即使您设法让它工作,它仍会在子 anchor 出现之前关闭父 anchor ,这很可能是导致工具提示停止工作的原因。

HTML:

<div class="tooltip_templates">
<a class="tooltip-container">
  This div has a tooltip with HTML when you hover over it!
  <span class="tooltip_content">
    <img src="myimage.png" /> <strong>This is the content of my tooltip!</strong>
  </span>
</a>

Javascript:

$(document).ready(function() {
  $('.tooltip-container').tooltipster({
    functionInit: function (instance, helper) {
      var content = $(helper.origin).find('.tooltip_content').detach();
      instance.content(content);
    }
  });
});

要包含的文件:

工作 fiddle :

https://jsfiddle.net/h6Lrvqay/1/

关于javascript - JQuery Tooltipster 插件不在 html 内容中显示带有超链接的工具提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39176927/

相关文章:

javascript - 如何使用 knockout 同时应用过滤和分页?

jquery - 使用CSS的样式选择选项

jquery - css3 导航菜单悬停状态问题

php - 在 jquery 自动完成中发送帖子或获取信息

javascript - jQuery slider 在 Chrome 中表现得很奇怪(+其他问题)

jquery - Chosen.js 可以搜索选项的值及其文本吗?

javascript - 我正在尝试将动态脚本添加到页面中,但它在 DOM 中仅显示为 txt

javascript - 为什么这个 if 条件总是 true (js)?

javascript - 默认 highstock 缩放,不带范围选择器按钮

javascript - while 循环因 jquery 中的某些数学函数而崩溃