jQuery简单纯文字提示条

如何制作jQuery简单纯文字提示条,先介绍提示条(tooltip)的意思是用户鼠标悬停经过事件发生提示title。它们已经呈现在大多数浏览器中,当你可以提供一个链接或图片的title属性,就是用户将鼠标悬停在该元素,浏览器通常会显示它作为一个提示条,通过文本存储使用数据命令,可以清除并替换链接标题。提示条不仅支持文字标题内容,还支持图片按钮空白框控件。那么我从国外作者的技术博客 http://www.alessioatzeni.com/blog/simple-tooltip-with-jquery-only-text/ 学到一点他的代码,然后设计成自己的样式。

逻辑论
1.抓取标题
我们首先从链接中抓取其标题,将变成文字作为提示条弹出。我们需要从链接中解除默认的标题,为了避免默认的标题提示和我们自定义的提示条发生冲突,所以通过文本存储使用数据命令,再清除并替换链接标题。
2.鼠标经过事件
建立新的段落元素,它们带有tooltip的class类,我们可以下一个方式设置提示条内容。增加子节到页面在appendTo(‘body’)后面写,并自定义fadeIn的动画属性。
3.鼠标离开事件
很简单的,恢复标题的属性,清除提示条。
4.鼠标经过事件
非常重要,当我们需要获得X轴与Y轴坐标才能定位正确的提示条,这样提示条会跟着鼠标的下面。

可以用自定义的tooltip代替标签的默认title值,自由巧妙地设计提示条的样式和动画。
​1.代码
<body>
<div class="container">
<h1>jQuery简单提示条<small>如何制作jQuery效果</small></h1>
<div class="container">
<h2>鼠标经过蓝色的文字</h2>
<p><a href="#" title="看见了灰色提示条吧?" class="masterTooltip">世界上有蓝色的蛋蛋</a></p>
 
<h2>鼠标经过灰色的全段落文章</h2>
  <p title="我和蛋蛋之间的故事很有趣吧。" class="masterTooltip">我和蛋蛋是去年七月末认识的,很有意思,我们是网友,蛋蛋在群聊里看见女人的名字,觉得这个名字太简单了,而且明确表明自己已经是女人了,好奇就加了我。我们聊的很好,有点难舍难分的感觉,蛋蛋说等到水到渠成,我就去见你。哈哈,我挺高兴的,反而有马上见见他的感觉。约他出来看看庐山真面目!没沉,是我没在更新。女人昨天喝多了!因为感触,看了很多关于爱情的帖子,觉得很对不起蛋蛋。因为不能给他幸福和一个小家。我爱他,很爱很爱。</p>
 
<h2 title="此为主标题!" class="masterTooltip">鼠标经过这个标题(有提示条)</h2>
<p title="此为副标题!" class="masterTooltip">我和蛋蛋之间的故事小标题</p>
   
   
<h2>鼠标经过搞笑的图片</h2>
<img src="http://dandan500.com/wp-content/uploads/2013/10/fa7a0b2442a7d9334695b2ebad4bd11372f001b6.jpg" class="masterTooltip" title="哇!看看小白蛋和他的伙伴们惊呆了" />
 
<h2>鼠标经过按钮</h2>
<button type="button" class="masterTooltip" title="点击[确认]按钮,当然只是死按钮,不会给你惊喜">确认</button>
 
<h2>鼠标经过填写框</h2>
  <input type="text" placeholder="你的名字" class="masterTooltip" title="请输入你喜欢的名字"/>
</div>
</body>
2.代码
body{
     background:#FF7B3A;
     font:bold 12px Arial, Helvetica, sans-serif;
     margin:0;
     padding:0;
     min-width:960px;
     color:#666; 
}
 
a { 
    text-decoration:none; 
    color:#4979C2;
}
 
h1 {
    font: 4em normal Arial, Helvetica,Microsoft JhengHei, sans-serif;
    padding: 0; margin: 0;
    text-align:center;
  color:#ccc;
}
 
h1 small{
    font: 14px normal  Arial, Helvetica,    Microsoft JhengHei, sans-serif;
    text-transform:uppercase; letter-spacing: 0.2em; line-height: 5em;
    display: block;
}
 
h2 {
    font-weight:700;
    color:#fff;
    font-size:20px;
    font: normal  Arial, Helvetica,     Microsoft JhengHei, sans-serif;
}http://www.huiyi8.com/huanbao/​
 
h2, p {环保标志
    margin-bottom:-1px;
}
 
.container {width: 960px; margin: 0 auto; overflow: hidden; height:910px;}
 
img {
    border:6px solid #fff;
}
 
.tooltip {
    display:none;
    position:absolute;
    border:0px solid #333;
    background-color:#ccc;
-webkit-border-radius: 20px;
-moz-border-radius: 20px;
border-radius: 20px;
-webkit-box-shadow: #000 1px 5px 20px;
-moz-box-shadow: #000 1px 5px 20px;
box-shadow: #000 1px 5px 20px;
    padding:10px;
    color:#C94338;
    font-size:12px;
}
3. [代码]记得在顶部或者底部php引用jquery库     
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
4. 代码
$(document).ready(function() {
// 纯文字提示条
$('.masterTooltip').hover(function(){
// 鼠标悬浮经过事件
var title = $(this).attr('title');
$(this).data('tipText', title).removeAttr('title');
$('<p class="tooltip"></p>')
.text(title)
.appendTo('body')
.fadeIn('slow');
}, function() {
// 鼠标悬浮离开事件
$(this).attr('title', $(this).data('tipText'));
$('.tooltip').remove();
}).mousemove(function(e) {
var mousex = e.pageX + 20; //获得X轴坐标
var mousey = e.pageY + 10; //获得Y轴坐标
$('.tooltip')
.css({ top: mousey, left: mousex })
});
});

posted @ 2014-07-30 17:02  虚空之眼  阅读(534)  评论(0编辑  收藏  举报