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 autocomplete插件修改
Apr 17 Javascript
javascript中的关于类型转换的性能优化
Dec 14 Javascript
详解js中构造流程图的核心技术JsPlumb(2)
Dec 08 Javascript
JS实现对中文字符串进行utf-8的Base64编码的方法(使其与Java编码相同)
Jun 21 Javascript
微信小程序 二维码canvas绘制实例详解
Jan 06 Javascript
Node.js获取前端ajax提交的request信息
Feb 20 Javascript
基于iScroll实现下拉刷新和上滑加载效果
Jul 18 Javascript
JS实现瀑布流布局
Oct 21 Javascript
ES6解构赋值实例详解
Oct 31 Javascript
完美解决axios跨域请求出错的问题
Feb 05 Javascript
node.js微信小程序配置消息推送的实现
Feb 13 Javascript
Vue3 Composition API的使用简介
Mar 29 Vue.js
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中CURL的CURLOPT_POSTFIELDS参数使用细节
2014/03/17 PHP
destoon文章模块调用企业会员资料的方法
2014/08/22 PHP
PHP多维数组排序array详解
2017/11/21 PHP
Laravel框架实现定时发布任务的方法
2018/08/16 PHP
ext form 表单提交数据的方法小结
2008/08/08 Javascript
javascript concat数组累加 示例
2009/09/03 Javascript
js setTimeout 常见问题小结
2013/08/13 Javascript
让javascript加载速度倍增的方法(解决JS加载速度慢的问题)
2014/12/12 Javascript
node.js中的fs.truncate方法使用说明
2014/12/15 Javascript
jQuery插件HighCharts绘制2D带Label的折线图效果示例【附demo源码下载】
2017/03/08 Javascript
Angular 4.x 路由快速入门学习
2017/05/03 Javascript
React-native桥接Android原生开发详解
2018/01/17 Javascript
js 图片转base64的方式(两种)
2018/04/24 Javascript
react实现点击选中的li高亮的示例代码
2018/05/24 Javascript
vue iview 隐藏Table组件里的某一列操作
2020/11/13 Javascript
Python实现Const详解
2015/01/27 Python
python实时分析日志的一个小脚本分享
2017/05/07 Python
python print 按逗号或空格分隔的方法
2018/05/02 Python
使用Python监视指定目录下文件变更的方法
2018/10/15 Python
python控制nao机器人身体动作实例详解
2019/04/29 Python
python3中替换python2中cmp函数的实现
2019/08/20 Python
Django 构建模板form表单的两种方法
2020/06/14 Python
Python文件名匹配与文件复制的实现
2020/12/11 Python
AmazeUI中模态框的实现
2020/08/19 HTML / CSS
丝芙兰波兰:Sephora.pl
2018/03/25 全球购物
英国健康和美容技术产品购物网站:CurrentBody
2019/07/17 全球购物
完美实现CSS垂直居中的11种方法
2021/03/27 HTML / CSS
工程地质勘察专业大学生求职信
2013/10/13 职场文书
酒店出纳岗位职责
2013/12/29 职场文书
亲子读书活动方案
2014/02/22 职场文书
六五普法规划实施方案
2014/03/21 职场文书
大三学习计划书范文
2014/05/02 职场文书
2014年收银工作总结
2014/11/13 职场文书
教师读书笔记
2015/06/29 职场文书
幼儿园开学家长寄语(2016秋季)
2015/12/03 职场文书
JavaWeb 入门:Hello Servlet
2021/07/16 Java/Android