轮播图-非移动端 |学习笔记

简介: 快速学习轮播图-非移动端

开发者学堂课程【移动 Web 前端开发:轮播图-非移动端 】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/594/detail/8457


轮播图-非移动端

目录

一、如何创建非移动端的轮播图


一、如何创建非移动端的轮播图

<style>

body{

/*在页面当中的任何地方都可以*/

font-size:100px;

.pc_imgeBox{

display:black;

width:100%;

height:450px;

background-image:url(“../images/slide_01_2000x410.jpg”);

background-repeat:no-repeat;

background-size:cover;

background-position:center;

.carousel-inner .item:nth-child(2){

background-image:url(“../images/slide_02_2000x410.jpg”)

.carousel-inner .item:nth-child(3){

background-image:url(“../images/slide_03_2000x410.jpg”)

.carousel-inner .item:nth-child(4){

background-image:url(“../images/slide_04_2000x410.jpg”)

}

</style>

<div class=”carousel-inner”>

<div class=”item active”>

<a class=”pc_imageBox” href=”#”>

</a>

</div>

<!DOCTYPE html>

<html lang="zh-CN">

<head>

<meta charset="utf-8">

<meta http-equiv="X-UA-Compatible" content="IE=edge">

<meta name="viewport" content="width=device-width, initial-scale=1">

<title>Bootstrap 101 Template</title>

<link href="./lib/bootstrap/css/bootstrap.css" rel="stylesheet">

</head>

<body>

<style>

.mobileImg{

width: 100%;

display: block;

}

.mobileImg > img{

width: 100%;

display: block;

}

.pcImg{

width: 100%;

height: 410px;

display: block;

/*设置背景图片了*/

/*设置图片居中显示*/

background-position: center center;

/*设置背景图片的大小*/

background-size: cover;

}

</style>

<div id="carousel-example-generic" class="carousel slide" data-ride="carousel">

<!-- Indicators -->

<ol class="carousel-indicators">

<li data-target="#carousel-example-generic" data-slide-to="0" class="active"></li>

<li data-target="#carousel-example-generic" data-slide-to="1"></li>

<li data-target="#carousel-example-generic" data-slide-to="2"></li>

<li data-target="#carousel-example-generic" data-slide-to="3"></li>

</ol>

<!-- Wrapper for slides -->

<div class="carousel-inner" role="listbox">

<div class="item active">

<!--移动端-->

<a href="javascript:;" class="mobileImg hidden-sm hidden-md hidden-lg">

<img src="./images/slide_01_640x340.jpg" alt="...">

</a>

<!--非移动端-->

<a href="javascript:;" class="pcImg hidden-xs" style="background-image: url('./images/slide_01_2000x410.jpg');"></a>

</div>

<div class="item">

<a href="javascript:;" class="mobileImg  hidden-sm hidden-md hidden-lg">

<img src="./images/slide_02_640x340.jpg" alt="...">

</a>

<a href="javascript:;" class="pcImg  hidden-xs" style="background-image: url('./images/slide_02_2000x410.jpg');"></a>

</div>

<div class="item">

<a href="javascript:;" class="mobileImg  hidden-sm hidden-md hidden-lg">

<img src="./images/slide_03_640x340.jpg" alt="...">

</a>

<a href="javascript:;" class="pcImg  hidden-xs" style="background-image: url('./images/slide_03_2000x410.jpg');"></a>

</div>

<div class="item">

<a href="javascript:;" class="mobileImg  hidden-sm hidden-md hidden-lg">

<img src="./images/slide_04_640x340.jpg" alt="...">

</a>

<a href="javascript:;" class="pcImg  hidden-xs" style="background-image: url('./images/slide_04_2000x410.jpg');"></a>

</div>

</div>

<a class="left carousel-control" href="#carousel-example-generic" role="button" data-slide="prev">

<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>

<span class="sr-only">Previous</span>

</a>

<a class="right carousel-control" href="#carousel-example-generic" role="button" data-slide="next">

<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>

<span class="sr-only">Next</span>

</a>

</div>

<script src="./lib/jquery/jquery.min.js"></script>

<script src="./lib/bootstrap/js/bootstrap.min.js"></script>

</body>

</html>

使用 js 动态创建下面移动端和非移动端

通过 data 来获取路径:

添加子元素

item.html($('').css("backgroundImage","url('"+imgSrc+"')"));

js:

$(function(){

/*获取当前所有 item*/

var items=$(".carousel-inner .item");

/*监听屏幕的大小改变*/

$(window).on("resize",function(){

/*1.获取当前屏幕的宽度*/

var width=$(window).width();

/*2.判断屏幕的宽度*/

if(width>=768){/*说明非移动端*/

/*为每一个 item 添加子元素--遍历*/

$(items).each(function(index,value){

var item=$(this);

/*当前自定义属性中 存储的图片路径*/

var imgSrc=item.data("largeImage");

console.log(imgSrc);

/*添加非移动端的子元素*/

item.html($('').css("backgroundImage","url('"+imgSrc+"')"));

});

}

else{

$(items).each(function(index,value){

var item=$(this);

var imgSrc=item.data("smallImage");

item.html('<a href="javascript:;" class="mobileImg"><img src="'+imgSrc+'" alt="..."></a>');

});

}

}).trigger("resize");

/*添加移动端的滑动操作*/

var startX,endX;

var carousel_inner=$(".carousel-inner")[0];

/*获取当前轮播图*/

var carousel=$(".carousel");

carousel_inner.addEventListener("touchstart",function(e){

startX= e.targetTouches[0].clientX;

});

carousel_inner.addEventListener("touchend",function(e){

endX= e.changedTouches[0].clientX;

if(endX-startX > 0){

/*上一张*/

carousel.carousel('prev');

}

else if(endX-startX < 0){

/*下一张*/

carousel.carousel('next');

}

});

});

相关文章
|
3天前
|
数据采集 人工智能 安全
|
12天前
|
云安全 监控 安全
|
4天前
|
自然语言处理 API
万相 Wan2.6 全新升级发布!人人都能当导演的时代来了
通义万相2.6全新升级,支持文生图、图生视频、文生视频,打造电影级创作体验。智能分镜、角色扮演、音画同步,让创意一键成片,大众也能轻松制作高质量短视频。
1047 151
|
4天前
|
编解码 人工智能 机器人
通义万相2.6,模型使用指南
智能分镜 | 多镜头叙事 | 支持15秒视频生成 | 高品质声音生成 | 多人稳定对话
|
17天前
|
机器学习/深度学习 人工智能 自然语言处理
Z-Image:冲击体验上限的下一代图像生成模型
通义实验室推出全新文生图模型Z-Image,以6B参数实现“快、稳、轻、准”突破。Turbo版本仅需8步亚秒级生成,支持16GB显存设备,中英双语理解与文字渲染尤为出色,真实感和美学表现媲美国际顶尖模型,被誉为“最值得关注的开源生图模型之一”。
1733 9
|
9天前
|
人工智能 自然语言处理 API
一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸
一句话生成拓扑图!next-ai-draw-io 结合 AI 与 Draw.io,通过自然语言秒出架构图,支持私有部署、免费大模型接口,彻底解放生产力,绘图效率直接爆炸。
683 152
|
11天前
|
人工智能 安全 前端开发
AgentScope Java v1.0 发布,让 Java 开发者轻松构建企业级 Agentic 应用
AgentScope 重磅发布 Java 版本,拥抱企业开发主流技术栈。
647 12
|
6天前
|
SQL 自然语言处理 调度
Agent Skills 的一次工程实践
**本文采用 Agent Skills 实现整体智能体**,开发框架采用 AgentScope,模型使用 **qwen3-max**。Agent Skills 是 Anthropic 新推出的一种有别于mcp server的一种开发方式,用于为 AI **引入可共享的专业技能**。经验封装到**可发现、可复用的能力单元**中,每个技能以文件夹形式存在,包含特定任务的指导性说明(SKILL.md 文件)、脚本代码和资源等 。大模型可以根据需要动态加载这些技能,从而扩展自身的功能。目前不少国内外的一些框架也开始支持此种的开发方式,详细介绍如下。
409 4