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写个checkbox——类似邮箱全选功能
Mar 19 Javascript
利用jQuery实现可以编辑的表格
May 26 Javascript
jQuery事件绑定on()、bind()与delegate() 方法详解
Jun 03 Javascript
jquery事件的ready()方法使用详解
Nov 11 Javascript
jQuery获取父元素及父节点的方法小结
Apr 14 Javascript
jQuery 出现Cannot read property ‘msie’ of undefined错误的解决方法
Nov 23 Javascript
Angular.js跨controller实现参数传递的两种方法
Feb 20 Javascript
详解angularjs 关于ui-router分层使用
Jun 12 Javascript
使用vue-infinite-scroll实现无限滚动效果
Jun 22 Javascript
JS实现的自定义map方法示例
May 17 Javascript
jQuery pager.js 插件动态分页功能实例分析
Aug 02 jQuery
JavaScript 如何在浏览器中使用摄像头
Dec 02 Javascript
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制作静态网站的模板框架(三)
2006/10/09 PHP
excellent!――ASCII Art(由目标图象生成ascii)
2007/02/20 PHP
Views rows style模板重写代码
2011/05/16 PHP
php获取远程图片的两种 CURL方式和sockets方式获取远程图片
2011/11/07 PHP
PHP 使用MySQL管理Session的回调函数详解
2013/06/21 PHP
深入解析PHP中的(伪)多线程与多进程
2013/07/01 PHP
php调用C代码的实现方法
2014/03/11 PHP
PHP判断是手机端还是PC端 PHP判断是否是微信浏览器
2017/03/15 PHP
js中的this关键字详解
2013/09/25 Javascript
Javascript事件实例详解
2013/11/06 Javascript
一个简单的动态加载js和css的jquery代码
2014/09/01 Javascript
JS回调函数的应用简单实例
2014/09/17 Javascript
javascript实现的闭包简单实例
2015/07/17 Javascript
js获取鼠标点击的对象,点击另一个按钮删除该对象的实现代码
2016/05/13 Javascript
老生常谈JavaScript数组的用法
2016/06/10 Javascript
从零学习node.js之利用express搭建简易论坛(七)
2017/02/25 Javascript
详解nodejs微信公众号开发——5.素材管理接口
2017/04/11 NodeJs
AngularJS实现select的ng-options功能示例
2017/07/12 Javascript
vue组件开发props验证的实现
2019/02/12 Javascript
js实现自动播放匀速轮播图
2020/02/06 Javascript
使用Python脚本将绝对url替换为相对url的教程
2015/04/24 Python
Python2.X/Python3.X中urllib库区别讲解
2017/12/19 Python
python实现微信自动回复功能
2018/04/11 Python
python3实现爬取淘宝美食代码分享
2018/09/23 Python
python日期相关操作实例小结
2019/06/24 Python
使用Python-OpenCV消除图像中孤立的小区域操作
2020/07/05 Python
解决redis与Python交互取出来的是bytes类型的问题
2020/07/16 Python
火山咖啡:Volcanica Coffee
2019/10/29 全球购物
跟单文员岗位职责
2014/01/03 职场文书
周年庆典邀请函范文
2014/01/23 职场文书
高中竞选班长演讲稿
2014/04/24 职场文书
申论倡议书范文
2014/05/13 职场文书
刑事辩护授权委托书格式
2014/10/13 职场文书
2015年设计师个人工作总结
2015/04/25 职场文书
python 爬取豆瓣网页的示例
2021/04/13 Python
浅析Django接口版本控制
2021/06/26 Python