jQuery鼠标悬浮链接弹出跟随图片实例代码

下面是关于jQuery鼠标悬浮链接弹出跟随图片实例代码的完整攻略:

  1. 核心思路和步骤
  2. 通过jQuery事件监听,实现当鼠标悬浮在链接上时,能够获取到链接的title,即图片的地址
  3. 动态创建一个图片元素,将获取到的图片地址设置为该元素的src属性
  4. 将创建的图片元素插入到页面中

  5. 示例代码说明
    下面是一个简单的实现,当鼠标悬浮在链接上时,弹出一张图片来跟随显示。

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>jQuery鼠标悬浮链接弹出跟随图片实例代码</title>
  <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
  <style>
    .pop-img {
      position: absolute;
      z-index: 999;
      display: none;
    }
  </style>
</head>
<body>
  <a href="#" class="pop-link" title="http://www.example.com/image1.jpg">链接1</a>
  <a href="#" class="pop-link" title="http://www.example.com/image2.jpg">链接2</a>
  <a href="#" class="pop-link" title="http://www.example.com/image3.jpg">链接3</a>
  <script>
    $(function() {
      // 当鼠标悬浮在链接上时
      $('.pop-link').hover(function() {
        // 获取图片地址
        var imgSrc = $(this).attr('title');
        // 动态创建图片元素
        var img = $('<img class="pop-img" src="' + imgSrc + '">');
        // 将图片插入到页面中
        $('body').append(img);
        // 显示图片
        img.show();
      }, function() {
        // 鼠标移走时,销毁图片
        $('.pop-img').remove();
      });
    });
  </script>
</body>
</html>

上述代码中,添加了三个链接,当鼠标悬浮在链接上时,会弹出相应的图片。为了实现鼠标移开后图片消失的效果,给创建的img元素添加了class为pop-img,同时设置了display为none,并在鼠标移开时调用remove()方法将其销毁。

  1. 另一个示例代码
    下面这个示例是在弹出的图片上添加了遮罩和关闭按钮。
<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>jQuery鼠标悬浮链接弹出跟随图片实例代码</title>
  <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
  <style>
    .pop-img-wrap {
      position: absolute;
      z-index: 999;
      display: none;
    }
    .pop-img-mask {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(0, 0, 0, 0.4);
    }
    .pop-img {
      display: block;
      max-width: 800px;
      max-height: 600px;
      position: relative;
      top: 50%;
      transform: translateY(-50%);
    }
    .pop-img-close {
      position: absolute;
      top: 10px;
      right: 10px;
      font-size: 20px;
      color: #fff;
      cursor: pointer;
    }
  </style>
</head>
<body>
  <a href="#" class="pop-link" title="http://www.example.com/image1.jpg">链接1</a>
  <a href="#" class="pop-link" title="http://www.example.com/image2.jpg">链接2</a>
  <a href="#" class="pop-link" title="http://www.example.com/image3.jpg">链接3</a>
  <div class="pop-img-wrap">
    <div class="pop-img-mask"></div>
    <img class="pop-img">
    <span class="pop-img-close">×</span>
  </div>
  <script>
    $(function() {
      // 关闭弹出框
      function closePopImg() {
        $('.pop-img-wrap').fadeOut(400, function() {
          $(this).remove();
        });
      }
      // 当鼠标悬浮在链接上时
      $('.pop-link').hover(function() {
        // 获取图片地址
        var imgSrc = $(this).attr('title');
        // 动态创建图片元素和遮罩
        var imgWrap = $('<div class="pop-img-wrap">');
        var mask = $('<div class="pop-img-mask">');
        var img = $('<img class="pop-img" src="' + imgSrc + '">');
        var closeBtn = $('<span class="pop-img-close">×</span>');
        // 将图片和遮罩插入到页面中
        imgWrap.append(mask).append(img).append(closeBtn);
        $('body').append(imgWrap);
        // 显示遮罩和图片
        mask.show();
        img.show();
        img.css({
          'left': ($(window).width() - img.width()) / 2,
          'top': ($(window).height() - img.height()) / 2
        });
      }, function() {
        // 鼠标移走时,销毁图片
        $('.pop-img-wrap').remove();
      });
      // 关闭图片
      $('body').on('click', '.pop-img-close', function() {
        closePopImg();
      });
      $('body').on('click', '.pop-img-mask', function() {
        closePopImg();
      });
    });
  </script>
</body>
</html>

上述代码中,第一个示例代码与其相比,主要增加了以下代码:
- 在HTML中添加了一个div元素,用于包裹弹出的图片,并设置其为隐藏
- 在CSS中添加了pop-img-mask和pop-img-close两个样式类,分别用于设置遮罩和关闭按钮样式
- 在JS中使用了jQuery的fadeIn()和fadeOut()方法,分别用于显示和隐藏弹出的图片和遮罩
- 使用了定位和transform属性,用于使图片垂直居中和水平居中
- 通过事件委托的方式,为关闭按钮和遮罩添加了点击事件,以关闭弹出的图片

希望以上说明对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jQuery鼠标悬浮链接弹出跟随图片实例代码 - Python技术站

(0)
上一篇 2023年6月9日
下一篇 2023年6月9日

相关文章

  • css中id和class的定义格式、使用技巧及选择

    下面来详细讲解“CSS中id和class的定义格式、使用技巧及选择”的攻略。 CSS中定义id和class 在CSS中,我们可以通过id和class来定义样式。 id的定义格式 id的定义格式为 #id,其中id为自定义名称,如: #myId { /* 样式代码 */ } class的定义格式 class的定义格式为 .class,其中class为自定义名称…

    css 2023年6月10日
    00
  • Vue常用指令v-if与v-show的区别浅析

    Vue常用指令v-if与v-show的区别浅析 介绍 Vue.js是目前最火爆的前端框架之一,而指令是Vue.js中比较重要的一部分。在Vue.js的指令中,v-if和v-show是两个非常常用和容易混淆的指令,它们都是用来控制元素的展示和隐藏,那么v-if和v-show有什么区别呢? 区别 v-if v-if是一个条件判断指令,当条件表达式为真时,才会展示…

    css 2023年6月10日
    00
  • CSS样式设置元素的透明度以50%为例

    要给元素设置50%的透明度,可以使用CSS的opacity属性。下面是完整的攻略: 步骤1:选择要设置透明度的元素 首先需要选择要设置透明度的元素。可以用CSS选择器来选择元素。例如,以下代码会选中所有class为transparent的元素: .transparent { /* 在这里设置透明度 */ } 步骤2:设置透明度 设置透明度的方法是使用opac…

    css 2023年6月9日
    00
  • HTML5如何为形状图上颜色怎么绘制具有颜色和透明度的矩形

    HTML5可以使用<canvas>元素进行图形的绘制。其中,可以使用fillStyle属性设置填充颜色,除此之外fillStyle还可以设置透明度。下面详细说明如何绘制具有颜色和透明度的矩形。 在HTML文件中创建一个<canvas>元素,并设置其宽和高属性。例如: <canvas id="myCanvas"…

    css 2023年6月9日
    00
  • CSS Position 使用详细小结

    关于CSS Position的使用详细小结,我会结合示例来进行讲解,以下是总结: 学习CSS Position CSS Position 在CSS中,Position属性用于设置元素的定位方式。Position属性可以让元素相对于它的容器以及文档本身来进行定位,同时它也是实现一些高级布局的重要手段。 CSS Position属性有如下取值: static(默…

    css 2023年6月9日
    00
  • 浅谈JS获取元素的N种方法及其动静态讨论

    文章标题:浅谈JS获取元素的N种方法及其动静态讨论 概述 获取元素是前端开发中最常用的操作之一,也是JS语言的一项基本技能。本文将介绍JS获取元素的N种方法及其动、静态讨论。 静态获取元素 1. getElementById 使用document.getElementById(id)方法可以通过id直接获取元素。 <div id="myDiv…

    css 2023年6月10日
    00
  • 利用css设置元素垂直居中的解决方法汇总

    下面我将详细讲解如何利用 CSS 设置元素垂直居中的解决方法汇总。 什么是垂直居中 在 CSS 中,垂直居中指的是将一个元素在垂直方向上居中对齐。垂直居中比较常用的场景包括父元素和子元素高度不一致、子元素固定高度等。 方法一:利用 flexbox 利用 Flexbox 布局可以非常简单地实现垂直居中。首先需要设定父元素的 display 属性为 flex,然…

    css 2023年6月10日
    00
  • Vue 实现拖动滑块验证功能(只有css+js没有后台验证步骤)

    关于Vue实现拖动滑块验证功能的步骤,我将详细讲解以下攻略。 1. 创建Vue项目 使用Vue CLI来创建Vue项目。在命令行中输入以下命令: vue create drag-slider 然后按照提示选择使用default preset和保存路径。等待安装完毕后,进入项目目录: cd drag-slider 2. 引入样式 此处我们需引入一个滑块的CSS…

    css 2023年6月9日
    00
合作推广
合作推广
分享本页
返回顶部