利用JS做网页特效——大图轮播
大图轮播完整流程代码操作:
<style>
* {
margin: 0px;
padding: 0px;
}
.stage {
width: 500px;
height: 300px;
border: 5px solid black;
margin: 200px;
position: relative;
overflow: hidden;
}
.to-left,
.to-right {
position: absolute;
top: 0px;
width: 50px;
height: 300px;
background-color: black;
color: white;
font-size: 30px;
text-align: center;
line-height: 300px;
opacity: 0.3;
}
.to-left {
left: 0px;
}
.to-right {
right: 0px;
}
.to-left:hover,
.to-right:hover {
cursor: pointer;
opacity: 0.5;
}
.banner {
width: 3000px;
height: 300px;
}
.items {
float: left;
width: 500px;
height: 300px;
background-color: blanchedalmond;
font-size: 100px;
text-align: center;
line-height: 300px;
}
</style>
</head>
<!--大图轮播特效-->
<body>
<div class="stage">
<div class="to-left">
<</div>
<div class="to-right">></div>
<div class="banner">
<div class="items">1</div>
<div class="items" style="">2</div>
<div class="items" style="">3</div>
<div class="items" style="">4</div>
<div class="items" style="">5</div>
<div class="items">1</div>
</div>
</div>
</body>
</html>
<script>
var to_right = document.getElementsByClassName('to-right')[0];
var to_left = document.getElementsByClassName('to-left')[0];
var banner = document.getElementsByClassName('banner')[0];
var arr = [];
var count = 1;
to_right.onclick = function() {
toRight();
}
function toRight(){
arr.push(window.setInterval("moveLeft()", 30));
}
to_left.onclick = function() {
toLeft();
}
function toLeft(){
arr.push(window.setInterval("moveRight()", 30));
}
function moveLeft() {
if(count < 5) {
if(banner.offsetLeft > count * (-500)) {
banner.style.marginLeft = banner.offsetLeft - 20 + "px";
} else {
for(var x in arr) {
window.clearInterval(arr[x]);
}
count++;
}
// 连接点
}else{
if(banner.offsetLeft > count * (-500)) {
banner.style.marginLeft = banner.offsetLeft - 20 + "px";
} else {
for(var x in arr) {
window.clearInterval(arr[x]);
}
count = 1;
banner.style.marginLeft = 0 + 'px';
}
}
}
function moveRight() {
if(count-1 >0) {
if(banner.offsetLeft < (count-2) * (-500)) {
banner.style.marginLeft = banner.offsetLeft + 20 + "px";
} else {
for(var x in arr) {
window.clearInterval(arr[x]);
}
count--;
}
}
}
window.setInterval("toRight()",1750);
</script>
利用JS做网页特效——大图轮播的更多相关文章
- CSS3常用属性(边框、背景、文本效果、2D转换、3D转换、过渡、有过渡效果大图轮播、动画)
CSS3边框: 1.CSS3圆角:border-radius 属性--创建边框线的圆角 <body style="font-size:24px; color:#60F;"& ...
- js 实现淘宝无缝轮播图效果,可更改配置参数 带完整版解析代码[slider.js]
前言: 本人纯小白一个,有很多地方理解的没有各位大牛那么透彻,如有错误,请各位大牛指出斧正!小弟感激不尽. 本篇文章为您分析一下原生JS写淘宝无缝轮播图效果 需求分析: ...
- [DBW]大图轮播,可通过两种方法实现
通过在div中加入表格,实现大图轮播,代码如下: 整体的思路: 1.在div中嵌入表格,设置div的宽和高,设置成图片大小,确定其位置,将图片插入表格,超出div部分隐藏 2.在js中定义一个变量接受 ...
- JS封装动画框架,网易轮播图,旋转轮播图
JS封装动画框架,网易轮播图,旋转轮播图 1. JS封装运动框架 // 多个属性运动框架 添加回调函数 function animate(obj,json,fn) { clearInterval(ob ...
- bootstrap大图轮播手机端不能手指滑动解决办法
网上看了很多解决办法,几乎本质都是一样的,都是引入一个滑动的js插件,加入一段js代码,即可生效,但是我试了hammer.js 和 touchSwipe.js 都不生效,也找不到原因是什么,目前在网上 ...
- 原生js和jquery实现图片轮播特效
本文给大家分享的是使用原生JS和JQ两种方法分别实现相同的图片轮播特效,十分的实用,也非常方便大家对比学习原生js和jQuery,有需要的小伙伴可以参考下. 1)首先是页面的结构部分对于我这种左右切换 ...
- 原生js和jquery实现图片轮播特效(转)
本文给大家分享的是使用原生JS和JQ两种方法分别实现相同的图片轮播特效,十分的实用,也非常方便大家对比学习原生js和jQuery,有需要的小伙伴可以参考下. 1)首先是页面的结构部分对于我这种左右切换 ...
- 纯原生JS大图轮播
CSS部分: CSS: <style type="text/css"> #banner { position: relative; width: 500px; heig ...
- 使用jQuery做简单的图片轮播效果
一.本特效主要用到的前端知识点 CSS中绝对定位(absolute)CSS实现垂直居中jQuery中简单的淡入淡出动画效果(fadeIn,fadeOut)定时器(setInterval,clear ...
随机推荐
- Java 面试总结(一) —— 面试常问的关键字总结
关键字: final finalize finally throws和throw static关键字的作用 abstract 和 interface super 和 this synchronize ...
- 大数据平台常见异常-zookeeper
本文主要阐述大数据平台环境zookeeper常见异常和解决方案 1.Connection reset by peer异常 异常说明 我们现在项目有个任务OneMinuteDataSync是用spark ...
- Java String charAt()方法
描述 此方法返回位于字符串的指定索引处的字符.该字符串的索引从零开始. 语法 此方法定义的语法如下: public char charAt(int index) 参数 这里是参数的细节: index ...
- Android实现模拟表单上传
很久以前,写过一篇关于下载的文章:基于HTTP协议的下载功能实现,今天对于Android上的文件上传,也简单的提两笔.在Android上,一般使用Http 模拟表单或者FTP来进行文件上传,使用FTP ...
- Luogu 1559 运动员最佳匹配问题(带权二分图最大匹配)
Luogu 1559 运动员最佳匹配问题(带权二分图最大匹配) Description 羽毛球队有男女运动员各n人.给定2 个n×n矩阵P和Q.P[i][j]是男运动员i和女运动员j配对组成混合双打的 ...
- Entity Framework Core 命名约定
本文翻译自<Entity Framework Core: Naming Convention>,由于水平有限,故无法保证翻译完全正确,欢迎指出错误.谢谢! 注意:我使用的是 Entity ...
- NPOI+反射 实现快速导出
只是觉得这样很方便 记录一下 公司有封装的方法,不过是查出的Table类型,每次用的时候很都很烦,处理数据也不方便,最主要的是我也没耐心去看,反正在我看来很麻烦,用的时候很头疼.还是习惯通过Model ...
- Oracle PIVOT 行转列方法
数据库中業種的存储如下图: SELECT * FROM M_TORIHIKISAKI_GYOSYU 其中GYIUSYU_CD字段代表不同的業種 而画面需要实现下图所示样式:(将每条数据的業種横向展开显 ...
- Oozie时出现Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure?
不多说,直接上干货! 问题详情 [hadoop@bigdatamaster oozie--cdh5.5.4]$ bin/ooziedb.sh create -sqlfile oozie.sql -ru ...
- C/C++中static的用法全局变量与局部变量
1.什么是static? static 是C/C++中很常用的修饰符,它被用来控制变量的存储方式和可见性. 1.1static的引入 我们知道在函数内部定义的变量,当程序执行到它的定义处时,编译器为它 ...