jQuery自制提示框tooltip改进版


Posted in Javascript onAugust 01, 2016

自带的title的提示效果的响应速度是非常缓慢的,使用jQuery自制提示tooltip!

jQuery自制提示框tooltip改进版

HTML:

<p><a href="#" title="超链接提示1" class="tooltip">提示1</a></p>
<p><a href="#" title="超链接提示2" class="tooltip">提示2</a></p>
<p><a href="#" title="自带超链接提示1">自带超链接提示1</a></p>
<p><a href="#" title="自带超链接提示2">自带超链接提示2</a></p>

CSS:

p a{display: block;width:150px;height:50px;line-height:50px;
    background:#FF3366;color:#fff;border-radius: 3px;text-align: center;}
  #tooltip{position:absolute;width:200px;height:50px;line-height:50px;border:1px solid #ccc;text-align: center;box-shadow: 1px 1px 2px #ccc;background:#fff;border-radius:5px;}

JQ:

$(function(){
    var x=10,y=20;//使得鼠标相对于tooltip偏离的距离
    $("a.tooltip").mouseover(function(e){
      this.myTitle=this.title;//获取title,临时存储
      this.title="";//避免和原生提示重复

      var tooltip="<div id='tooltip'>"+this.myTitle+"</div>";
      $("body").append(tooltip);
      //css()设置样式
      $("#tooltip").css({
        "top":(e.pageY+y)+"px",//e.pageX相对与文档,e.clientX相对于可视区
        "left":(e.pageX+x)+"px",
      }).show("fast");
    }).mouseout(function(){
      this.title=this.myTitle;//重复恢复
      $("#tooltip").remove();//记得要把生成的结点移除掉
    }).mousemove(function(e){
      $("#tooltip").css({
        "left":(e.pageX+x)+"px",
        "top":(e.pageY+y)+"px",
      });
    });
  });

改进版:将上面的tooltip内容加上图片预览!

jQuery自制提示框tooltip改进版

JQ:

$(function(){
    var x=10,y=20;
    $("a.tooltip").mouseover(function(e){
      this.myTitle=this.title;
      this.title="";
      var imgTitle=this.myTitle?"<br/><span id='tooltipspan'>"+this.myTitle+"</span>":"";
      var tooltip="<div id='tooltip'><img src='"+this.href+"' alt='产品预览图'/>"+imgTitle+"</div>";
      $("body").append(tooltip);
      $("#tooltip").css({
        "top":(e.pageY+y)+"px",
        "left":(e.pageX+x)+"px",
      }).show("fast");
    }).mouseout(function(){
      this.title=this.myTitle;
      $("#tooltip").remove();
    }).mousemove(function(e){
      $("#tooltip").css({
        "top":(e.pageY+y)+"px",
        "left":(e.pageX+x)+"px",
      })
    });
  });

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery ajax 同步异步的执行示例代码
Jun 23 Javascript
理解JSON:3分钟课程
Oct 28 Javascript
asp.net网站开发中用jquery实现滚动浏览器滚动条加载数据(类似于腾讯微博)
Mar 14 Javascript
jquery检测input checked 控件是否被选中的方法
Mar 26 Javascript
jQuery基于当前元素进行下一步的遍历
May 20 Javascript
纯javascript实现简单下拉刷新功能
Mar 13 Javascript
详解vue-cli快速构建vue应用并实现webpack打包
Dec 13 Javascript
深入理解vue中slot与slot-scope的具体使用
Jan 26 Javascript
Element-ui tree组件自定义节点使用方法代码详解
Sep 17 Javascript
Vue项目部署的实现(阿里云+Nginx代理+PM2)
Mar 26 Javascript
一文读懂ES7中的javascript修饰器
May 06 Javascript
jquery将信息遍历到界面上实例代码
Jan 21 jQuery
Three.js学习之文字形状及自定义形状
Aug 01 #Javascript
jQuery实现的省市县三级联动菜单效果完整实例
Aug 01 #Javascript
javascript实现的全国省市县无刷新多级关联菜单效果代码
Aug 01 #Javascript
基于原生JS实现图片裁剪
Aug 01 #Javascript
AngularJS基础 ng-include 指令简单示例
Aug 01 #Javascript
jQuery实现的表头固定效果实例【附完整demo源码下载】
Aug 01 #Javascript
AngularJS基础 ng-if 指令用法
Aug 01 #Javascript
You might like
通过PHP current函数获取未知字符键名数组第一个元素的值
2013/06/24 PHP
php如何连接sql server
2015/10/16 PHP
php 判断字符串编码是utf-8 或gb2312实例
2016/11/01 PHP
php实现有序数组打印或排序的方法【附Python、C及Go语言实现代码】
2016/11/10 PHP
jQuery 源码分析笔记(7) Queue
2011/06/19 Javascript
DWR实现模拟Google搜索效果实现原理及代码
2013/01/30 Javascript
jquery简单的弹出层浮动层代码
2015/04/27 Javascript
javascript实现状态栏中文字动态显示的方法
2015/10/20 Javascript
手机端实现Bootstrap简单图片轮播效果
2016/10/13 Javascript
WdatePicker.js时间日期插件的使用方法
2017/07/26 Javascript
vue-router相关基础知识及工作原理
2018/03/16 Javascript
angularJs select绑定的model取不到值的解决方法
2018/10/08 Javascript
vue实现一个炫酷的日历组件
2018/10/08 Javascript
vue-router懒加载速度缓慢问题及解决方法
2018/11/25 Javascript
vue中监听路由参数的变化及方法
2019/12/06 Javascript
js中addEventListener()与removeEventListener()用法案例分析
2020/03/02 Javascript
Vue实现购物车实例代码两则
2020/05/30 Javascript
浅谈vue生命周期共有几个阶段?分别是什么?
2020/08/07 Javascript
[02:11]DOTA2上海特级锦标赛主赛事第二日RECAP
2016/03/04 DOTA
[52:12]FNATIC vs Infamous 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
python中的set实现不重复的排序原理
2018/01/24 Python
使用python将图片格式转换为ico格式的示例
2018/10/22 Python
解决django后台管理界面添加中文内容乱码问题
2019/11/15 Python
django 读取图片到页面实例
2020/03/27 Python
HTML5探秘:用requestAnimationFrame优化Web动画
2018/06/03 HTML / CSS
Html5原生拖拽相关事件简介以及基础实现
2020/11/19 HTML / CSS
美国优质宠物用品购买网站:Muttropolis
2020/02/17 全球购物
Python里面如何实现tuple和list的转换
2012/06/13 面试题
介绍下static、final、abstract区别
2015/01/30 面试题
应届生高等护理求职信
2013/10/12 职场文书
营业经理岗位职责
2013/11/10 职场文书
毕业生自荐信
2013/12/14 职场文书
五好关工委申报材料
2014/05/31 职场文书
应届毕业生的自我评价
2019/06/21 职场文书
PHP正则表达式之RCEService回溯
2022/04/11 PHP
解决springboot druid数据库连接失败后一直重连的方法
2022/04/19 Java/Android