这里的图片轮播方法是我从网上参考的方法,只是自己做了一些改进

先来贴一发代码

在这个html的目录下有三个同级的文件夹,img中放图片,css和js分别存放这个网页的css文件和js文件,这里用到了jquery,记得引入顺序,jquery一定要放在其他js前面。

html代码很简单,不做过多解释。

看一下引入的css,init2.css

*{

margin: 0px ;

padding: 0px ;

}

#layout{

width: 960px ;

margin: 0 auto ;

}

#banner{

position: relative;

overflow: hidden;

width: 600px;

height: 200px;

border-radius: 10px ;

border: 2px solid black;

}

#banner_img li{

float: left;

list-style-type: none;

}

#index{

position: absolute;

right: 8px ;

bottom: 8px ;

}

#index li{

float: left;

width: 16px ;

height: 16px ;

text-align: center;

line-height: 16px ;

border-radius: 5px ;

border:1px solid #FF7300 ;

background: white;

list-style: none;

margin-left: 8px ;

cursor: pointer;

}

.clearfix:after{

content: "" ;

height: 0px ;

display: block;

clear:both ;

}

.on

{

background:#FF7300 ;

}

css基本上和前面的html中的类对应,claerfix来清除浮动,on是代表轮播图片的索引中当前的正播放的图片的索引,其实就改个背景,这里的索引是后面动态加上去的,索引在html中看不到。主要思路就是把装图片的容器设置成overfl;hidden;

下面是一种比较简单的实现,利用jquery的fadeIn和fadeOut效果来实现。

//fadeIn and fadeOut

var time ;

var index = 1 ;

var tolnum = 3 ;

$(function(){

setInterval("showBanner("+tolnum+")",3000);

});

function showBanner(n)

{

var ul = $("#banner_img") ;

ul.children().fadeOut("slow") ;

ul.children().eq(index).fadeIn("slow") ;

index = index+1>n-1 ? 0 : index+1 ;

}

恩,不知道为什么到最后一张图片的时候会产生没有淡出的bug,不太懂,请大家指教。

第二种方法是利用jquery的animation来实现margin属性的过渡。

init();

function init()

{

$(function(){

var index = 0 ;

var adTime ;

var len = $("#banner_img li").length ;

addIndex(len) ;

var bannerLi = $("#index li");

//handle index

$("#index li").mouseover(function() {

index = $("#index li").index(this) ;

showImgs(index) ;

});

//toggleInterval

$("#banner").hover(function(){

clearInterval(adTimer);

},function(){

adTimer=setInterval(function(){

//alert(index) ;

showImgs(index);

index++;

if(index==len){

index=0;

}

},2000)

}).trigger('mouseleave');

});

}

//auto add index

function addIndex(n)

{

var ul = $("") ;

for(var i=1;i<=n;i++)

{

var li = $("

") ;

li.append(function(num){

return num

}(i)) ;

ul.append(li) ;

}

ul.children().first().addClass('on') ;

$("#banner_img").append(ul);

}

function showImgs(index)

{

var adwidth=$("#banner_img>li:first").width();

$("#banner_img").stop(true, false) ;

//$("#banner_img").css('margin-left', -index*adwidth+"px");

$("#banner_img").animate({

"marginLeft":-adwidth*index+"px"

},1000);

$("#index li").removeClass('on').eq(index).addClass('on') ;

}

hover()是一种代替mouseenter和mouseleave的方法,听说比较好用。trigger()来触发当前对象的一个状态,这里要先触发一次mouseleave的状态来初始化计时器,因为这里的设定是当鼠标移到$("#banner")上就销毁定时器,锁定当前图片,移开鼠标就重新添加定时器。

$("#banner_img").animate({

"marginLeft":-adwidth*index+"px"

},1000);

这了就是对jquery中animation方法的使用,通过传进来的index来改变banner_img的margin,这里是margin-left,所以图片就会从右往左刷(需要设置浮动),如果需要从下往上刷就设置margin-top就好了,还有我发现js中动态添加margin是不能触发css的transition的。

html简单图片轮播居中,html简单图片轮播的实现相关推荐

  1. html图片要上下居中显示,CSS图片垂直居中最简单的方法推荐

    使用CSS实现图片垂直居中,本文提供三种方法实现CSS图片居中,其中第一种加一个标签的方法是我推荐的,代码简洁,兼容性比较好,其他的hack可能会存在问题,不建议使用.如果你对图片实现居中有更好的方法 ...

  2. 实现简单的轮播图(单张图片、多张图片)

    前言 刚学js没多久,这篇博客就当做记录了,以后还会完善的,希望大佬们多多指点.ps:下面出现的都是直接闪动,没有滑动效果的轮播图. 单张图片的替换 原理 1.将几张图片叠在一起,通过改变" ...

  3. vue element ui 走马灯轮播图(简单几句话实现自动缩放效果)

    实现效果 element ui 简单实现轮播图 本文,中间叙述的是过程,完整代码在最后面. 最近在写公司官网,用的是element ui 走马灯组件写的轮播图,ui想要自动缩放的效果,如上视频.在这里 ...

  4. html中简单轮播图实现原理,常见轮播效果及其实现原理

    常见轮播效果及其实现原理 说明: 本项目只做最基础的原理分析与最简单的应用场景. 1. 简单做法:css定位 + js滑动动画 思路: 在同一个父容器内, 1. 通过改变父容器的`left` 值实现- ...

  5. js实现轮播图(简单滚动轮播)

    原理: 在页面上有一个可视区域(a),用来显示图片,还有一个放所有需要轮播的图片的区域(b) ,当执行操作时 ,b需要移动 ,移动一个a的宽度,使下一张图片显示, 需要实现一下效果: 1.自动播放 2 ...

  6. 用jQuery实现轮播图——超简单(代码解释)

    先看效果 鼠标悬浮时停止轮播,离开时自动轮播,点下一张小圆点会随着动 直接上代码 <!DOCTYPE html> <html><head><meta char ...

  7. 微信小程序swiper图片尺寸_微信小程序之swiper轮播图中的图片自适应高度的方法...

    小程序中的轮播图很简单,官方都有例子的,但是唯一的缺陷就是swiper是固定死的150px高度,这样如果传入的图片大于这个高度就会被隐藏.辣么,怎样让图片自适应不同分辨率捏. 我的思路是:获取屏幕宽度 ...

  8. 微信小程序swiper图片尺寸_微信小程序之swiper轮播图中的图片自适应高度

    小程序中的轮播图很简单,官方都有例子的,但是唯一的缺陷就是swiper是固定死的150px高度,这样如果传入的图片大于这个高度就会被隐藏.辣么,怎样让图片自适应不同分辨率捏. 我的思路是:获取屏幕宽度 ...

  9. 微信小程序的swiper轮播图中的图片设置自适应高度的一种方法

    微信小程序的swiper轮播图中的图片设置自适应高度的一种方法 小程序中的轮播图很简单,但是唯一的缺陷就是 swiper 是固定的150px 高度(320px 宽度),这样如果传入的图片大于这个高度就 ...

  10. php详情页图片尺寸,拼多多主图轮播图详情页图片尺寸要求大全

    1.拼多多商品轮播图: a. 尺寸宽度和高度都需要大于等于480px,正方形最好. b. 大小1M以内,不能超过1M. c. 数量限制在10张以内,等于10章. d. e. 主轮播图背景为纯白色(服饰 ...

最新文章

  1. 斯坦福全球AI报告:人才需求两年暴增35倍,中国机器人部署量涨500%
  2. 收到猎头信息的一些感想
  3. oracle故障一例,工作中遇到的oracle故障分析和处理一例
  4. spring mvc 返回json的配置
  5. C语言编程怎么搜答案,C语言编程题及答案
  6. 阿里图标库的使用方式
  7. 七.其他技术-Beetl与BeetlSQL
  8. while循环实例C语言,实例之while循环
  9. 开源的驰骋工作流程引擎,工作流程管理系统,表结构与运行机制。
  10. 用计算机修改图片或照片,如何利用电脑自带的画图工具修改图片的基本属性
  11. java map 空指针异常_Java8使用Collectors toMap,当value为null时报空指针异常
  12. Word怎么在图片上制作一个简历封面?
  13. 三星新旗舰手机 GALAXY S III正式发布
  14. RPO和RTO是什么?
  15. 微服务分布式架构中,如何高效收集请求/响应日志
  16. H5实现透明通道视频
  17. 基于Redisson实现的延时队列RedissonDelayedQueue实现websocket服务端心跳监听
  18. go语言中pdf转图片功能的实现(CentOS)
  19. 算法LeetCode自主学习------猜数字
  20. 程序员兼职可以从什么平台接私活?

热门文章

  1. 表单获取焦点和失去焦点
  2. 手机上如何修改寸照背景颜色
  3. 基于MDK1808-EK_T70开发板的miniGUI应用程序演示03: ads1110热电偶温度传感器
  4. 有计算机测试你几岁,How-Old刷屏了吧!测测你看起来几岁?
  5. 使命、愿景、价值观到底有什么区别
  6. 从turtlesim到贪吃蛇……(补充)
  7. android仿饿了么购物车效果,仿饿了么购物车跳动
  8. 喜马拉雅算法解析 (两种算法)
  9. 按键精灵通过句柄获取窗口坐标_按键精灵9 得到鼠标指向的窗口句柄
  10. yate怎样调出彩色的log日志实时调试信息