自己定义html中a标签的title提示tooltip
HTML 自己 定义 标签 提示 title tooltip
2023-09-11 14:20:59 时间
自己定义html中a标签的title提示tooltip
简单介绍
用简单的jquery+CSS创建自己定义的a标签title提示。用来取代浏览器默认行为。如图:
Javascript代码
$(function() { $("a[title]").each(function() { var a = $(this); var title = a.attr('title'); if (title == undefined || title == "") return; a.data('title', title) .removeAttr('title') .hover( function () { var offset = a.offset(); var aWidth = a.outerWidth(); var aHeight = a.outerHeight(); var left = offset.left + a.outerWidth() + 1; var top = offset.top + aHeight + 10; var maxTop = $(document).outerHeight() + $(document).scrollTop()-54; top = top > maxTop ?maxTop : top; if (left > window.innerWidth - aWidth) { left = offset.left + (aWidth > 200 ?
aWidth / 2 : 0); } $("<div id=\"anchortitlecontainer\"></div>").appendTo($("body")).html(title).css({top:top,left:left}).fadeIn(function () { var pop = $(this); setTimeout(function () { pop.remove(); }, pop.text().length*80); }); }, function() { $("#anchortitlecontainer").remove(); } ); }); });
(最后更新2014/5/27)
别忘记引用JQuery。
代码中setTimeout(function () { pop.remove(); }, pop.text().length*80);是依据title长度计算提示时间,用来防止太短的title提示过长或太长的title提示过短。
CSS代码
#anchortitlecontainer { position: absolute; z-index: 5999; border: solid 1px #315B6C; padding: 5px; color: #315B6C; background: none repeat scroll 0 0 #FFFFFF; border-radius: 5px; display: none; } #anchortitlecontainer:before { position: absolute; bottom: auto; left: -1px; top: -15px; border-color: transparent transparent transparent #315B6C; border-style: solid; border-width: 15px; content: ""; display: block; width: 0; } #anchortitlecontainer:after { position: absolute; bottom: auto; left: 0px; top: -13px; border-color: transparent transparent transparent #FFFFFF; border-style: solid; border-width: 15px; content: ""; display: block; width: 0; }
使用一些CSS3的特性,回避使用图片。
不是CSS高手,调出这个样式着实花了一些时间,假设有人能用上,那就是我的荣幸了。:)
相关文章
- 使用HtmlUnit获取html页面
- 优化 html 标签 为何能用HTML/CSS解决的问题就不要使用JS?
- Python 输出HTML实体字符(&#x***转html,html符号乱码,中文乱码)
- HTML图片无法显示?别方,我们的程序员已经帮你做好了保管
- 【Python】AttributeError: 'PytestPluginManager' object has no attribute 'addhooks' / pytest-html
- Day6:html和css
- 一款很不错的html转xml工具-Html Agility Pack
- word转html
- PyScript:让Python在HTML中运行
- 基于 Bootstrap 5 的教育和课程主题 HTML 网站模板
- Web 前端 之 html 移动端/PC端元素长按功能的简单封装,实现元素长按事件的触发