jquery实现对联广告的方法

接下来我将详细讲解“jquery实现对联广告的方法”的完整攻略。

标题

攻略一:利用jQuery插件实现对联广告

jQuery拥有丰富的插件库,利用插件实现对联广告是一种较为简单和可靠的方案。以下是实现对联广告的示例代码:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>jQuery 对联广告</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
    <script src="https://cdn.bootcdn.net/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>
    <style>
      .ad-wrap {
        position: fixed;
        top: 50%;
      }

      .ad-left {
        left: 0;
        transform: translateY(-50%);
      }

      .ad-right {
        right: 0;
        transform: translateY(-50%);
      }

      .ad-close {
        position: absolute;
        top: 0;
        right: 0;
        cursor: pointer;
      }
    </style>
  </head>
  <body>
    <div class="ad-wrap ad-left">
      <a href="#"><img src="left-ad.jpg"></a>
      <span class="ad-close">×</span>
    </div>

    <div class="ad-wrap ad-right">
      <a href="#"><img src="right-ad.jpg"></a>
      <span class="ad-close">×</span>
    </div>

    <script>
      $(document).ready(function() {
        var delayTime = parseInt($.cookie('delay-time')) || 0;
        var adWidth = $('.ad-wrap').width();
        var windowWidth = $(window).width();
        var leftPos = 0 - adWidth;
        var rightPos = windowWidth;

        $('.ad-left').animate({
          left: leftPos
        }, delayTime);

        $('.ad-right').animate({
          right: rightPos
        }, delayTime);

        $('.ad-close').click(function() {
          $(this).parent().remove();
        });

        $(window).scroll(function() {
          var scrollTop = $(window).scrollTop();
          var leftNewPos = scrollTop + ((windowHeight - $('.ad-wrap').height()) / 2);
          var rightNewPos = windowWidth - adWidth;

          $('.ad-left').stop().animate({
            top: leftNewPos
          }, 1000);

          $('.ad-right').stop().animate({
            top: rightNewPos
          }, 1000);
        });
      });

      $(window).on('beforeunload', function() {
        $.cookie('delay-time', 5000);
      });
    </script>
  </body>
</html>

实现过程:

  1. 先导入jQuery库和jquery-cookie插件库;
  2. 设置对联广告元素的样式,包括位置和关闭按钮等;
  3. 在$(document).ready()函数中实现对联广告的出现和消失,通过$.cookie实现页面离开后再次进入时对联广告的延迟出现;
  4. 在$(window).scroll()函数中实现对联广告的滚动效果。

攻略二:利用jQuery自定义动画实现对联广告

jQuery提供了自定义动画的方法,可以更加灵活地实现对联广告。以下是实现对联广告的示例代码:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>jQuery 对联广告</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
    <style>
      .ad-wrap {
        position: fixed;
        top: 50%;
      }

      .ad-left {
        left: 0;
        transform: translateY(-50%);
      }

      .ad-right {
        right: 0;
        transform: translateY(-50%);
      }

      .ad-close {
        position: absolute;
        top: 0;
        right: 0;
        cursor: pointer;
      }
    </style>
  </head>
  <body>
    <div class="ad-wrap ad-left">
      <a href="#"><img src="left-ad.jpg"></a>
      <span class="ad-close">×</span>
    </div>

    <div class="ad-wrap ad-right">
      <a href="#"><img src="right-ad.jpg"></a>
      <span class="ad-close">×</span>
    </div>

    <script>
      $(document).ready(function() {
        var windowHeight = $(window).height();
        var delayTime = 5000;
        var adWidth = $('.ad-wrap').width();
        var windowWidth = $(window).width();
        var leftNewPos = 0 - adWidth;
        var rightNewPos = windowWidth;

        $('.ad-left').css('top', windowHeight / 2);
        $('.ad-right').css('top', windowHeight / 2);

        $('.ad-left').animate({
          left: leftNewPos
        }, delayTime, function() {
          $(this).animate({
            top: windowHeight / 2
          }, 1000);
        });

        $('.ad-right').animate({
          right: rightNewPos
        }, delayTime, function() {
          $(this).animate({
            top: windowHeight / 2
          }, 1000);
        });

        $('.ad-close').click(function() {
          $(this).parent().remove();
        });
      });
    </script>
  </body>
</html>

实现过程:

  1. 设置对联广告元素的样式,包括位置和关闭按钮等;
  2. 在$(document).ready()函数中实现对联广告的出现和消失,通过自定义动画实现对联广告的滚动效果,设置停顿时间,添加回调函数实现完成滚动后对联广告停留的效果。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jquery实现对联广告的方法 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • jQWidgets jqxPasswordInput主题属性

    以下是关于 jQWidgets jqxPasswordInput 组件中主题属性的详细攻略。 jQWidgets jqxPasswordInput 主题属性 jQWidgets jqxPasswordInput 组件主题属性用于控制组件的外观样式。 语法 $(‘#passwordInput’).jqxPasswordInput({ theme: ‘class…

    jquery 2023年5月12日
    00
  • 实例详解jQuery的无new构建

    当我们使用jQuery时,常常使用一下形式: var $div = $(‘div’); 这里使用$()构造函数实例化了一个jQuery对象,但是我们也可以使用无new的方式来创建jQuery对象,如下所示: var $div = jQuery(‘div’); 这里我们直接使用了jQuery的全局变量来实例化对象,可以看到我们没有使用new来创建对象。这种方式…

    jquery 2023年5月28日
    00
  • jQWidgets jqxDateTimeInput valueChanged事件

    以下是关于“jQWidgets jqxDateTimeInput valueChanged事件”的完整攻略,包含两个示例说明: 事件简介 valueChanged 事件是 jQWidgets jqxDateTimeInput 控件的一个事件,用于在日期时间输入框的值发生变化时触发。该事件的语法如下: $("#jqxDateTimeInput&quo…

    jquery 2023年5月10日
    00
  • jQuery实现的中英文切换功能示例

    说明:以下是一篇“jQuery实现的中英文切换功能示例”的完整攻略,主要分为以下几个部分:项目需求分析、技术选择与准备、代码实现和测试与优化。 项目需求分析 本项目的主要需求是通过点击按钮实现中英文字体的切换。因此,需要实现以下功能: 按钮点击事件的绑定与监听; 根据按钮状态执行不同的字体切换操作; 确定中英文切换的实现方式,并通过代码实现; 技术选择与准备…

    jquery 2023年5月28日
    00
  • Jquery高级应用Deferred对象原理及使用实例

    Jquery高级应用Deferred对象原理及使用实例 什么是Deferred对象 在jQuery1.5版本中新增了一个Deferred对象,它是jQuery中推崇的异步编程解决方案之一。Deferred对象为异步编程提供了一种可靠的状态和普遍存在的逐级响应处理方式,它可以在多个回调函数之间传递用于异步处理的操作和结果。 一个Deferred对象具有3个状态…

    jquery 2023年5月28日
    00
  • jquery解析XML及获取XML节点名称的实现代码

    以下是关于“jquery解析XML及获取XML节点名称的实现代码”的攻略。 1. 解析XML文档 使用 jQuery 解析 XML 文档非常简单,可以使用 $.parseXML() 方法将 XML 格式的字符串转换为 XML 文档对象,然后使用 jQuery 对象的 API(如 find() / filter() / each())对文档进行操作。 示例代码…

    jquery 2023年5月27日
    00
  • 通过jQuery学习js类型判断的技巧

    下面我将详细介绍通过jQuery学习JavaScript类型判断的技巧。 1. 理解JavaScript中的基本数据类型 JavaScript中包括6种基本数据类型和1种复杂数据类型,它们是:- 基本数据类型: number, string, boolean, null, undefined, symbol。- 复杂数据类型: object。 其中,numb…

    jquery 2023年5月28日
    00
  • jQWidgets jqxKanban columnRenderer属性

    jQWidgets jqxKanban 是一种看板控件,用于在 Web 应用程序中创建看板。columnRenderer 属性是 jqxKanban 控件的一个,用于自定义看板列的渲染方式。以下是 jqxKanban 的 columnRenderer 属性的详细说明,以及两个示例说明。 属性 columnRenderer 属性用于自定义看板列的渲染方式。该属…

    jquery 2023年5月10日
    00
合作推广
合作推广
分享本页
返回顶部