【Java 进阶篇】揭秘 JQuery 广告显示与隐藏:打造令人惊艳的用户体验

news2024/10/7 20:32:04

在这里插入图片描述

在当今互联网时代,广告已经成为网页中不可忽视的一部分。然而,如何通过巧妙的交互设计,使广告既能吸引用户的眼球,又不会给用户带来干扰,成为了许多前端开发者需要思考的问题之一。在这篇博客中,我们将深入探讨如何使用 JQuery 实现广告的显示与隐藏,以及如何通过这一特效打造令人惊艳的用户体验。

广告的魅力

在广告行业,有一句广告词:“有广告的地方,就有巧思”。广告是商家向用户传递信息的重要途径,也是网站盈利的重要手段之一。然而,用户对于过于强制性或过于频繁的广告常常感到厌烦,因此设计一种既能展示广告内容,又不令用户产生负面感受的方法显得尤为重要。

JQuery 的魔法

JQuery 是一个快速、简洁的 JavaScript 库,它极大地简化了 HTML 文档的遍历和操作、事件处理、动画等操作。在广告显示与隐藏的场景中,JQuery 提供了强大的方法,使我们能够用更少的代码实现更多的效果。

在开始之前,确保你已经引入了 JQuery 库。你可以通过以下方式获取最新版本的 JQuery:

<script src="https://code.jquery.com/jquery-3.6.4.min.js"></script>

基础案例:点击按钮显示与隐藏广告

为了更好地理解 JQuery 广告显示与隐藏的原理,我们先从一个简单的例子开始。在这个案例中,我们将通过点击按钮来显示或隐藏一个广告块。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>JQuery 广告显示与隐藏</title>
    <style>
        #adContainer {
            width: 300px;
            height: 150px;
            background-color: #f0f0f0;
            display: none; /* 初始状态隐藏 */
            position: fixed;
            bottom: 20px;
            right: 20px;
            padding: 10px;
            border-radius: 8px;
        }

        #toggleButton {
            padding: 10px;
            background-color: #4caf50;
            color: white;
            cursor: pointer;
        }
    </style>
    <script src="https://code.jquery.com/jquery-3.6.4.min.js"></script>
</head>
<body>

<div id="adContainer">
    <p>这里是精彩的广告内容!</p>
</div>

<button id="toggleButton">点击显示/隐藏广告</button>

<script>
    // 使用 JQuery 实现广告显示与隐藏
    $(document).ready(function() {
        $("#toggleButton").click(function() {
            $("#adContainer").toggle(); // 切换显示与隐藏
        });
    });
</script>

</body>
</html>

在这个例子中,我们首先定义了一个广告容器 adContainer 和一个按钮 toggleButton。通过 CSS,我们设置了广告容器的样式,初始状态为隐藏。在脚本部分,我们使用 JQuery 的 toggle 方法,使得点击按钮时广告的显示与隐藏状态切换。这是一个简单而实用的基础案例。

进阶应用:渐变动画与延迟效果

为了提升用户体验,我们可以通过添加动画效果和一定的延迟来使广告显示与隐藏更为流畅。在这个进阶应用中,我们将为广告的显示与隐藏添加渐变动画效果,并延迟显示广告。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>JQuery 广告显示与隐藏进阶应用</title>
    <style>
        #adContainer {
            width: 300px;
            height: 150px;
            background-color: #f0f0f0;
            display: none;
            position: fixed;
            bottom: 20px;
            right: 20px;
            padding: 10px;
            border-radius: 8px;
            transition: opacity 0.5s; /* 添加渐变动画效果 */
        }

        #toggleButton {
            padding: 10px;
            background-color: #4caf50;
            color: white;
            cursor: pointer;
        }
    </style>
    <script src="https://code.jquery.com/jquery-3.6.4.min.js"></script>
</head>
<body>

<div id="adContainer">
    <p>这里是精彩的广告内容!</p>
</div>

<button id="toggleButton">点击显示/隐藏广告</button>

<script>
    // 使用 JQuery 实现带动画效果的广告显示与隐藏
    $(document).ready(function() {
        $("#toggleButton").click(function() {
            // 使用 fadeToggle 方法实现带渐变动画的显示与隐藏
            $("#adContainer").fadeToggle(500);

            // 如果需要延迟显示广告,可以使用 setTimeout
            // setTimeout(function() {
            //     $("#adContainer").fadeToggle(500);
            // }, 1000);
        });
    });
</script>

</body>
</html>

在这个进阶应用中,我们为广告容器添加了 transition 属性,使得在改变 opacity(透明度)时产生渐变效果,持续时间为 0.5 秒。通过使用 fadeToggle 方法,我们实现了带有渐变动画效果的广告显示与隐藏。

如果你希望延迟显示广告,可以取消注释 setTimeout 部分,并在其中设置合适的延迟时间。这样,广告将在按钮点击后经过一段时间再显示,营造更加自然的用户体验。

响应式设计:适应不同设备的广告显示

在移动设备普及的今天,响应式设计已经成为前端开发的标配。为了确保广告在不同设备上有良好的显示效果,我们可以使用媒体查询(Media Query)和 JQuery 结合起来,实现广告的响应式设计。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>JQuery 广告显示与隐藏 - 响应式设计</title>
    <style>
        #adContainer {
            width: 300px;
            height: 150px;
            background-color: #f0f0f0;
            display: none;
            position: fixed;
            padding: 10px;
            border-radius: 8px;
            transition: opacity 0.5s;
        }

        #toggleButton {
            padding: 10px;
            background-color: #4caf50;
            color: white;
            cursor: pointer;
        }

        /* 添加媒体查询,根据设备宽度调整广告容器的宽度 */
        @media only screen and (max-width: 600px) {
            #adContainer {
                width: 100%;
            }
        }
    </style>
    <script src="https://code.jquery.com/jquery-3.6.4.min.js"></script>
</head>
<body>

<div id="adContainer">
    <p>这里是精彩的广告内容!</p>
</div>

<button id="toggleButton">点击显示/隐藏广告</button>

<script>
    // 使用 JQuery 实现带动画效果的广告显示与隐藏
    $(document).ready(function() {
        $("#toggleButton").click(function() {
            $("#adContainer").fadeToggle(500);
        });
    });
</script>

</body>
</html>

在这个例子中,我们通过媒体查询设置了在设备宽度小于等于 600px 时,广告容器的宽度为 100%。这样,在移动设备上,广告容器将充满整个屏幕宽度,保证了响应式设计。

总结

通过本博客的学习,我们深入探讨了如何使用 JQuery 实现广告的显示与隐藏。从基础案例到进阶应用,再到响应式设计,我们逐步深入,让这一特效更具实用性和美感。

在实际项目中,我们可以根据需求灵活运用这些技巧,打造令人惊艳的用户体验。希望本博客能够为你在前端开发中的广告设计提供一些启发,让你在用户交互中游刃有余。在创造性的世界中,让我们一同奇妙前行!

作者信息

作者 : 繁依Fanyi
CSDN: https://techfanyi.blog.csdn.net
掘金:https://juejin.cn/user/4154386571867191

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1221171.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vscode文件夹折叠问题

今天发现一个vscode的文件夹显示的问题&#xff0c;首先是这样的&#xff0c;就是我的文件夹里又一个子文件夹&#xff0c;子文件夹里有一些文件&#xff0c;但是我发现无法折叠起这个子文件夹&#xff0c;总是显示全部的文件&#xff0c;这让我备份很难&#xff0c;具体参考 h…

pipeline agent分布式构建

开启 agent rootjenkins:~/learning-jenkins-cicd/07-jenkins-agents# docker-compose -f docker-compose-inbound-agent.yml up -d Jenkins配置添加 pipeline { agent { label docker-jnlp-agent }parameters {booleanParam(name:pushImage, defaultValue: true, descript…

vscode中vue项目引入的组件的颜色没区分解决办法

vscode中vue项目引入的组件的颜色没区分解决办法 图中引入组件和其他标签颜色一样没有区分&#xff0c;让开发者不易区分&#xff0c;很蓝瘦 这个就很直观&#xff0c;解决办法就是你当前的vscode版本不对&#xff0c;你得去找找其他版本&#xff0c;我的解决办法就是去官网历…

Python入门简介及下载安装,超详细教学!

文章目录 一、Python简介&#xff1a;Python解释器的类型Python的运行机制1、查看 Python 版本2、第一个Python3.x程序3、Python 应用 二、Python安装&#xff08;windows&#xff09;1、下载2、安装步骤&#xff1a; 三、运行Python1、交互式解释器&#xff1a;扩展&#xff1…

美团外卖APP如何查看使用美团外卖红包优惠券?

美团外卖APP如何查看美团外卖红包优惠券&#xff1f; 1、手机打开美团外卖APP&#xff1b; 2、点击底部我的>我的资产>红包/神券&#xff0c;即可查看到美团外卖红包优惠券&#xff1b; 美团外卖红包优惠券怎么免费领取&#xff1f; 关注「草柴」公众号&#xff0c;回复…

JAVA深化篇_42—— 正则表达式

3 正则表达式 3.1正则表达式介绍 3.1.1 什么是正则表达式 正则表达式&#xff0c;又称规则表达式。&#xff08;英语&#xff1a;Regular Expression&#xff0c;在代码中常简写为 regex、regexp 或 RE&#xff09;&#xff0c;是计算机科学的一个概念。正则表达式通常被用来…

【Linux】:进程间通信

进程间通信 一.基本概念二.简单的通信-管道1.建立通信信道2.通信接口 一.基本概念 是什么 两个或多个进程实现数据层面的交互。 因为进程独立性的存在&#xff0c;导致进程间的通信成本比较高。 为什么 因为我们有多进程协同的需求。 怎么办 a.进程间通信的本质:必须让不…

新手必看!!STM32定时器简介

一、定时器有哪些&#xff1f; 定时器分为三大类&#xff1a;基本定时器、通用定时器和高级定时器。 二、每个定时器的功能以及使用场景 1. 基本定时器&#xff08;Basic Timers&#xff09;&#xff1a; 功能&#xff1a; 基本定时器具有较为简单的功能&#xff0c;通常用于…

2023.11.17 hadoop之HDFS进阶

目录 HDFS的机制 edits和fsimage文件 HDFS的存储原理 写入数据原理: 读取数据原理: 元数据简介 元数据存储流程 HDFS安全机制 HDFS归档机制 HDFS垃圾桶机制 接着此前的内容 https://blog.csdn.net/m0_49956154/article/details/134298109?spm1001.2014.3001.5501 …

三菱FX3U小项目—传输带定分级控制

目录 一、项目描述 二、IO口分配 三、项目程序 四、总结 一、项目描述 两条运输带顺序相连&#xff0c;为了避免运送的物料在1号运输线上堆积&#xff0c;所以启动时&#xff0c;1号运输带开始运行&#xff0c;5S后2号运输带自动启动。停机时顺序与启动刚好相反&#xff0c…

基于数据库(MySQL)与缓存(Redis)实现分布式锁

分布式锁 分布式锁&#xff1a;分布式锁是在分布式的情况下实现互斥类型的一种锁 实现分布式锁需要满足的五个条件 可见性&#xff1a;多个进程都能看到结果互斥性&#xff1a;只允许一个持有锁的对象的进入临界资源可用性&#xff1a;无论何时都要保证锁服务的可用性&#x…

Kafka入门教程与详解(一)

Kafka入门教程与详解&#xff08;一&#xff09; 一、Kafka入门教程 1.1 消息队列&#xff08;Message Queue) Message Queue消息传送系统提供传送服务。消息传送依赖于大量支持组件&#xff0c;这些组件负责处理连接服务、消息的路由和传送、持久性、安全性以及日志记录。消…

C++类中public 和 protected 和 private访问权限 struct和class的区别 类成员设置为私有自己控制权限

public 和 protected 和 private访问权限 public 公共权限 类内可以访问 类外可以访问 protected 保护权限 类内可以访问 类外不可以访问 儿子可以访问父亲中的保护内容如父亲的车 private 私有权限 类内可以访问 类外不可以访问 儿子不可以访问父亲的私有权限内容如不想…

服务器数据恢复—热备盘同步中断导致Raid5数据丢失的数据恢复案例

服务器数据恢复环境&#xff1a; 某单位一台服务器上有一组raid5阵列&#xff0c;该raid5阵列有15块成员盘。上层是一个xfs裸分区&#xff0c;起始位置是0扇区。 服务器故障&检测&#xff1a; 服务器raid5阵列中有硬盘性能表现不稳定&#xff0c;但是由于管理员长时间没有关…

【图解算法】- 异位词问题:双指针+哈希表

一 - 前言 介绍&#xff1a;大家好啊&#xff0c;我是hitzaki辰。 社区&#xff1a;&#xff08;完全免费、欢迎加入&#xff09;日常打卡、学习交流、资源共享的知识星球。 自媒体&#xff1a;我会在b站/抖音更新视频讲解 或 一些纯技术外的分享&#xff0c;账号同名&#xff…

【Synopsys Bug记录】DC综合报错(显示warning:Unable to resolve reference)

文章目录 一、问题描述二、问题所在三、问题解决总结4.1 Warning的产生4.2 代码风格4.3 网表正确性 一、问题描述 在综合一个SOC时&#xff0c;发现综合后的门级网表文件缺少了apb系统下的子模块的网表。该SOC已经成功在FPGA上运行了&#xff0c;按理说在设计上是没有问题的。在…

Android平台 - APP备案

今年因 工业和信息化部 要求&#xff0c;Andorid各大厂商陆续发出通知&#xff0c;需要各应用公司及时进行app备案&#xff0c;如过期未进行备案则会被陆续下架&#xff01; 正好在统计Andorid各平台对于app备案时间节点要求&#xff0c;故此予以总结&#xff08;一切均已平台为…

oracle21c报错 【ORA-65096: 公用用户名或角色名无效】

1.数据库版本 oracle21c 2.问题提示 创建用户提示【ORA-65096: 公用用户名或角色名无效】 create user 自定义用户名 identified by 密码;--例:用户为test1&#xff0c;密码为123456 create user test1 identified by 123456;三.解决办法及结果 oracle11g之后的版本&#xff…

【从入门到起飞】JavaSE—IO工具包(Commons-io,Hutool) (2)

&#x1f38a;专栏【JavaSE】 &#x1f354;喜欢的诗句&#xff1a;天行健&#xff0c;君子以自强不息。 &#x1f386;音乐分享【如愿】 &#x1f384;欢迎并且感谢大家指出小吉的问题&#x1f970; 文章目录 &#x1f33a;工具包Commons-io⭐使用步骤&#x1f6f8;新建一个文…

Java编程中,使用时间戳机制实现增量更新的示例

一、需求 课程下可以创建多个讲次&#xff0c;然后分享出去。 在没有更新分享前&#xff0c;通过分享链接看到的课程及讲次详情是快照。课程制作者可以继续修改调整自己的课程&#xff0c;对分享用户是不可见。 当制作者完成修改后&#xff0c;更新分享&#xff0c;让用户看到…