Ste*_*ven 7 javascript jquery twitter-bootstrap twitter-bootstrap-3
我的网站上有一个链接列表,它们在Bootstrap工具提示中显示图像
<a data-html="true" data-toggle="tooltip" title="<img src='1.png' />">Item 1</a>
<a data-html="true" data-toggle="tooltip" title="<img src='2.png' />">Item 2</a>
<a data-html="true" data-toggle="tooltip" title="<img src='3.png' />">Item 3</a>
<script type="text/javascript" language="javascript">
$(document).ready(function () {
$('a').tooltip({
placement: "right"
})
}
</script>
Run Code Online (Sandbox Code Playgroud)
这只是在所有链接的右侧显示工具提示.虽然图像是静态的,但我希望当用户移动鼠标时,工具提示图像会移动.
您可以在此站点上看到我想要做的示例:http://www.hearthpwn.com/decks/381677-druidereno.在右侧边栏上,有一个可以悬停的卡片列表,工具提示图像跟随鼠标移动.看起来他们不使用Bootstrap,我只是想模仿功能.
我在Bootstrap功能中没有看到任何操作:http://getbootstrap.com/javascript/#tooltips
谁知道我怎么做到这一点?
dav*_*rad 12
你不能在bootstrap中本地执行此操作.但您可以通过使用"代理元素"轻松模仿行为.诀窍是将图像工具提示附加到第二个元素,然后在图像内移动鼠标光标时根据鼠标位置更新元素位置.
一个图像 :
<img id="img" src="https://static.pexels.com/photos/6555/nature-sunset-person-woman-large.jpg" />
Run Code Online (Sandbox Code Playgroud)
一个代理元素,这里是一个<i>标签trigger: manual :
<i id="img-tooltip" data-toggle="tooltip" data-placement="right" title="Tooltip for image" data-animation="false" data-trigger="manual"/>
Run Code Online (Sandbox Code Playgroud)
设置代理服务器的元素position来absolute,因此它可以趴趴走移动:
#img-tooltip {
position: absolute;
}
Run Code Online (Sandbox Code Playgroud)
最后更新代理位置并在图像内部移动鼠标光标时显示工具提示:
$("#img").on('mousemove', function(e) {
$("#img-tooltip").css({top: e.pageY, left: e.pageX });
$('[data-toggle="tooltip"]').tooltip('show')
})
$("#img").on('mouseleave', function(e) {
$('[data-toggle="tooltip"]').tooltip('hide')
})
Run Code Online (Sandbox Code Playgroud)
演示 - > http://jsfiddle.net/h2dL07ns/
更新了演示 - > http://jsfiddle.net/h2dL07ns/324/使用@Marks的pointer-events: none;建议.它消除了偶尔的闪烁.
| 归档时间: |
|
| 查看次数: |
11365 次 |
| 最近记录: |