最简短的js焦点图代码

<style>
*{margin:0 auto;padding:0px;}
ul,li{list-style:none;}
ul{width:5000px;position:relative;transition:0.5s;}
li{float:left;display:inline;width:1200px;}
.focus{overflow:hidden;width:1200px;}
nav span{padding:1em;background:#eee;position:relative;left:80%;top:-33px;opacity:0.5;}
nav span:hover{background:#e70041;color:#fff;}
</style>

<div class="focus">
<ul>
<li><img src="1.jpg" height="756" width="1200" /></li>
<li><img src="2.jpg" height="756" width="1200" /></li>
<li><img src="3.jpg" height="756" width="1200" /></li>
</ul>
<nav><span>1</span><span>2</span><span>3</span></nav>
</div>

<script>
var focus = document.querySelector(".focus ul")
var list = document.querySelectorAll("nav span")
for(i=0;i<list.length;i++){
list[i].onmouseover = (function(i){return function(){focus.style.left=-1200*i + "px";};})(i);
}
</script>


刚写了一个非常简短的js切换图,兼容ie8以上,如果有无名大神可以继续精简代码,欢迎补充


  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单JavaScript 焦点轮播代码示例: HTML: ```html <div class="slider"> <img src="img1.jpg" alt="Image 1"> <img src="img2.jpg" alt="Image 2"> <img src="img3.jpg" alt="Image 3"> </div> ``` CSS: ```css .slider { position: relative; width: 100%; height: 300px; overflow: hidden; } .slider img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; transition: opacity 1s ease; } .slider img.active { opacity: 1; } ``` JavaScript: ```javascript var images = document.querySelectorAll('.slider img'); var current = 0; function showImage(n) { images[current].className = ''; current = (n + images.length) % images.length; images[current].className = 'active'; } var slideInterval = setInterval(showNext, 5000); function showNext() { showImage(current + 1); } function showPrevious() { showImage(current - 1); } var next = document.getElementById('next'); var previous = document.getElementById('previous'); next.onclick = function() { clearInterval(slideInterval); showNext(); slideInterval = setInterval(showNext, 5000); }; previous.onclick = function() { clearInterval(slideInterval); showPrevious(); slideInterval = setInterval(showNext, 5000); }; ``` 这段代码创建了一个具有 "slider" 类的容器,并在其中放置了三个像。CSS 将容器设置为相对定位,并设置了一个固定高度和隐藏溢出。像被设置为绝对定位,每个像的初始不透明度为 0,并且它们都具有 1 秒的渐变效果。JavaScript 部分定义了一个 "showImage" 函数,该函数接受一个数字参数 n,用于确定要显示的像。 "current" 变量跟踪当前显示的像的索引。 "showImage" 函数根据 n 参数更新 "current" 变量,并根据类名 "active" 显示对应的像。 "showNext" 函数调用 "showImage" 函数并传递 current + 1 作为参数,以显示下一个像。 "showPrevious" 函数类似,但是传递 current - 1 作为参数,以显示前一个像。 "slideInterval" 变量保存 setInterval 函数的返回值,该函数每隔 5 秒调用一次 showNext 函数。 "next" 和 "previous" 变量是指向 HTML 中 id 为 "next" 和 "previous" 的元素的引用,这些元素是用作下一个和上一个按钮的链接。当单击这些按钮时,分别清除 slideInterval,显示下一个或前一个像,并重新启动 slideInterval。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值