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 相关文章推荐
用一段js程序来实现动画功能
Mar 06 Javascript
XMLHTTPRequest的属性和方法简介
Nov 23 Javascript
JS获取键盘上任意按键的值(实例代码)
Nov 12 Javascript
搭建pomelo 开发环境
Jun 24 Javascript
jquery使用animate方法实现控制元素移动
Mar 27 Javascript
JSON字符串和JSON对象相互转化实例详解
Jan 05 Javascript
微信小程序 slider 详解及实例代码
Jan 10 Javascript
js实现鼠标左右移动,图片也跟着移动效果
Jan 25 Javascript
JS路由跳转的简单实现代码
Sep 21 Javascript
浅谈在不使用ssr的情况下解决Vue单页面SEO问题(2)
Nov 08 Javascript
Node.js + express基本用法教程
Mar 14 Javascript
vue.js封装switch开关组件的操作
Oct 26 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 自定义错误处理函数的使用详解
2013/05/10 PHP
PHP遍历某个目录下的所有文件和子文件夹的实现代码
2013/06/28 PHP
PHP判断指定时间段的2个方法
2014/03/14 PHP
laravel项目利用twemproxy部署redis集群的完整步骤
2018/05/11 PHP
论坛特效代码收集(落伍转发-不错)
2006/12/02 Javascript
Javascript类库的顶层对象名用户体验分析
2010/10/24 Javascript
20款非常优秀的 jQuery 工具提示插件 推荐
2012/07/15 Javascript
JS文本框追加多个下拉框的值的简单实例
2013/07/12 Javascript
网页前端优化之滚动延时加载图片示例
2013/07/13 Javascript
深入理解JavaScript系列(31):设计模式之代理模式详解
2015/03/03 Javascript
JavaScript通过setTimeout实时显示当前时间的方法
2015/04/16 Javascript
JS判断当前页面是否在微信浏览器打开的方法
2015/12/08 Javascript
js实现选项卡内容切换以及折叠和展开效果【推荐】
2017/01/08 Javascript
jQuery事件与动画基础详解
2017/02/23 Javascript
vue+vuex+axios实现登录、注册页权限拦截
2018/03/09 Javascript
关于JavaScript中高阶函数的魅力详解
2018/09/07 Javascript
JS中数据结构之栈
2019/01/01 Javascript
JavaScript实现抖音罗盘时钟
2019/10/11 Javascript
window下eclipse安装python插件教程
2017/04/24 Python
深入分析python中整型不会溢出问题
2018/06/18 Python
在PyCharm下使用 ipython 交互式编程的方法
2019/01/17 Python
Python操作rabbitMQ的示例代码
2019/03/19 Python
Pandas之ReIndex重新索引的实现
2019/06/25 Python
六种酷炫Python运行进度条效果的实现代码
2020/07/17 Python
pycharm实现猜数游戏
2020/12/07 Python
英国领先的高级美容和在线皮肤诊所:Face the Future
2020/06/17 全球购物
请介绍一下WSDL的文档结构
2013/03/17 面试题
委托证明的格式
2014/01/10 职场文书
绿色环保演讲稿
2014/05/10 职场文书
求职信范文大全
2014/05/26 职场文书
纪念九一八爱国演讲稿600字
2014/09/14 职场文书
企业年检委托书范本
2014/10/14 职场文书
单位租房协议书样本
2014/10/30 职场文书
2015年第十五个全民国防教育日宣传活动方案
2015/05/06 职场文书
高三语文教学反思
2016/02/16 职场文书
Memcached介绍及php-memcache扩展安装
2021/04/01 PHP