`
lgstarzkhl
  • 浏览: 334513 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

js首页图片切换效果

阅读更多
搜狐女人频道首页的JS图片切换效果
http://xiayankun.blog.163.com/blog/static/37229377200952765210856/

可以直接用以下代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="gb2312">
<head>
<title>搜狐女人频道首页的JS图片切换效果</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<style type="text/css">
* { margin:0; padding:0; }
body {
 margin:0;
 color:#88c; background:#333;
}
img { margin:0; padding:0; border:0; }
#js_F {
 position:relative;
 top:10px; left:10px;
 overflow:hidden;
 width:395px; height:185px;
 background:#33c;
}
.div_img {
 position:absolute; top:0;
 width:295px; height:185px;
 cursor:pointer;
}
#div_img_0 { z-index:5; left:0; }
#div_img_1 { z-index:4; left:25px; }
#div_img_2 { z-index:3; left:50px; }
#div_img_3 { z-index:2; left:75px; }
#div_img_4 { z-index:1; left:100px; }
</style>
</head>
<body>
<div id="js_F">
 <div id="div_img_0" class="div_img"><a href="#"><img src="http://www.lmwq.com.cn/imglist/01.jpg" /></a><img src="http://www.lmwq.com.cn/i/bg_showimg.gif" onmouseover="jsf_mmove(0)" /></div>
 <div id="div_img_1" class="div_img"><a href="#"><img src="http://www.lmwq.com.cn/imglist/02.jpg" /></a><img src="http://www.lmwq.com.cn/i/bg_showimg.gif" onmouseover="jsf_mmove(1)" /></div>
 <div id="div_img_2" class="div_img"><a href="#"><img src="http://www.lmwq.com.cn/imglist/03.jpg" /></a><img src="http://www.lmwq.com.cn/i/bg_showimg.gif" onmouseover="jsf_mmove(2)" /></div>
 <div id="div_img_3" class="div_img"><a href="#"><img src="http://www.lmwq.com.cn/imglist/04.jpg" /></a><img src="http://www.lmwq.com.cn/i/bg_showimg.gif" onmouseover="jsf_mmove(3)" /></div>
 <div id="div_img_4" class="div_img"><a href="#"><img src="http://www.lmwq.com.cn/imglist/05.jpg" /></a><img src="http://www.lmwq.com.cn/i/bg_showimg.gif" onmouseover="jsf_mmove(4)" /></div>
</div>
<script type="text/javascript">
<!--///*--><![CDATA[/*><!--*/
var div_imgs = document.getElementById("js_F").getElementsByTagName("div");
var imgLeft = [0, 25, 50, 75, 100]; //5个图片的初始left值
var imgWidth = 270; //图片的宽度
var atf = [true, true, true, true, true]; //5个图片的位置:true为右边,false为左边
var speed1 = 10, speed2 = 2000, mo = 15; //速度
var sTo;
function jsf_move(n){
 clearTimeout(sTo);
 var thisL; //图片left值
 if (atf[n]) { //要移动的图片在右边
  //需移动的图片(包括该图片左边的所有图片)向左边移动)
  for (var i=0; i<=n; i++) { //当前值-(图片宽度-(当前值-初始值))/速度
   thisL = parseInt(getStyle(div_imgs[i],"left"));
   div_imgs[i].style.left = thisL - Math.ceil((imgWidth-(imgLeft[i]-thisL))/mo) + "px";
   if (i<n) atf[i] = false; //更改图片的位置状态
  }
 } else { //要移动的图片在左边
  //需移动的图片(包括该图片右边的所有图片)向右边移动)
  for (var i=4; i>=n; i--) { //当前值+(当前值-初始值)/速度
   thisL = parseInt(getStyle(div_imgs[i],"left"));
   div_imgs[i].style.left = thisL + Math.ceil(Math.abs(thisL-imgLeft[i])/mo) + "px";
   if (i>n) atf[i] = true; //更改图片的位置状态
  }
 }
 thisL = parseInt(getStyle(div_imgs[n],"left"));
 if ((atf[n]  &&  thisL>(imgLeft[n]-imgWidth)) || (!atf[n]  &&  thisL<imgLeft[n])) {
  //当前图片移动未结束,继续移动当前图片
  sTo = setTimeout(function(){jsf_move(n);}, speed1);
 } else {
  //当前图片移动结束,准备移动下一张图片
  if (n>=3  &&  atf[n]) {
   atf[n] = false;
   sTo = setTimeout(function(){jsf_move(n);}, speed2);
  } else if (n==0  &&  !atf[n]) {
   atf[n] = true;
   sTo = setTimeout(function(){jsf_move(n);}, speed2);
  } else if (atf[n]){
   atf[n] = false;
   sTo = setTimeout(function(){jsf_move(++n);}, speed2);
  } else {
   sTo = setTimeout(function(){jsf_move(--n);}, speed2);
  }
 }
}
//判断图片的位置
function jsf_mmove(n){
 clearTimeout(sTo);
 switch (n){
 case 0 :
  atf[0] = false;
  jsf_move(0);
  break;
 case 1 :
 case 2 :
 case 3 :
  if (atf[n-1]) {
   sTo = setTimeout(function(){jsf_move(n-1);}, speed1);
  } else if (atf[n]) {
   atf[n-1] = true;
   sTo = setTimeout(function(){jsf_move(n-1);}, speed1);
  } else {
   sTo = setTimeout(function(){jsf_move(n);}, speed1);
  }
  break;
 case 4 :
  atf = [false, false, false, true, true];
  jsf_move(3);
  break; 
 }
}
window.onload = function(){
 sTo = setTimeout("jsf_move(0)",speed2);
}
function getStyle( elem, name ) {
 if (elem.style[name]) { return elem.style[name]; }
 else if (elem.currentStyle) { return elem.currentStyle[name]; }
 else if (document.defaultView  &&  document.defaultView.getComputedStyle) {
  name = name.replace(/([A-Z])/g,"-$1");
  name = name.toLowerCase();
  var s = document.defaultView.getComputedStyle(elem,"");
  return s  &&  s.getPropertyValue(name);
 }
 else { return null; }
}
/*]]>*///-->
</script>
</body>
</html>

分享到:
评论

相关推荐

    JS多种新闻图片切换效果

    在这个项目中,“JS多种新闻图片切换效果”指的是使用JavaScript实现的不同类型的新闻图片轮播功能。这类效果通常用于新闻网站或者资讯平台,以动态展示多张图片,提高用户的浏览体验。 1. 图片切换效果类型: - ...

    js实现首页焦点图片切换效果

    - **js脚本大全**:可能包含实现焦点图片切换效果的JavaScript代码。 - **js讨论社区.url**:可能是一个链接,指向有关JavaScript编程的在线讨论社区,供开发者寻求帮助或分享经验。 - **css**:目录可能包含样式表...

    JavaScript图片切换效果.rar

    JavaScript图片切换效果是一种常见的网页动态展示技术,常用于制作轮播图、相册或产品展示等。这种效果可以通过JavaScript库,如jQuery,或者原生JavaScript实现。本资源"JavaScript图片切换效果.rar"提供了一个实例...

    多种js图片切换效果

    在JavaScript(简称JS)编程中,图片切换效果是一种常见的网页动态设计技术,它极大地提升了用户体验,使得静态的图片展示变得更加生动有趣。本篇文章将深入探讨几种常用的JS图片切换效果及其实现方法。 首先,我们...

    js图片滑动切换效果

    本篇文章将深入探讨如何使用JS实现图片滑动切换效果,并介绍几种常见的特效。 一、基本原理 图片滑动切换效果通常基于时间间隔或用户交互(如点击按钮)来改变显示的图片。JS可以监听这些事件,并更新HTML中的图片...

    多图片切换效果JavaScript实现

    本文将详细探讨如何使用JavaScript实现多图片切换效果,适用于新闻图片展示或网站焦点区域。 首先,JavaScript是一种强大的客户端脚本语言,常用于网页动态交互。在实现图片切换效果时,我们通常会利用JavaScript的...

    常用图片切换效果javascript

    本文将深入探讨“常用图片切换效果javascript”的实现原理和具体应用,主要基于描述中的“有透明效果”这一特点进行讲解。 首先,我们要理解透明效果在图片切换中的作用。在CSS3中,`opacity`属性可以用来设置元素...

    html+css+js实现图片切换效果

    标题中的“html+css+js实现图片切换效果”是指利用HTML、CSS和JavaScript这三种核心技术来创建一个动态的图片轮播或切换功能。在网页设计中,这种效果常见于产品展示、滑动相册或者幻灯片展示等场景,能够为用户带来...

    两种JS图片切换效果

    JS 图片切换效果 图片轮播 支持火狐

    JavaScript图片切换展示效果.rar

    JavaScript图片切换展示效果是一种常见的网页动态元素,常用于创建引人入胜的用户体验,例如网站的焦点图或幻灯片展示。这种效果可以自动或手动切换页面上的图片,为用户提供一个交互式的浏览环境。在本项目中,...

    js图片切换效果

    在JavaScript(JS)中实现图片切换效果是一种常见的前端开发任务,可以增强网页的交互性和视觉体验。"js图片切换效果"通常涉及到动态加载、动画过渡和用户体验优化等多个方面。在这个场景下,描述提到"当前显示的...

    js做的新闻图片切换效果

    在JavaScript图片切换效果中,开发者通常会使用以下关键知识点: 1. **DOM操作**:JavaScript通过Document Object Model(DOM)与HTML页面进行交互,添加、修改或删除元素。在这个案例中,可能是通过获取和改变`...

    JavaScript图片切换滑动效果

    JavaScript图片切换滑动效果是一种常见的网页动态展示技术,它通过编程方式实现图片的平滑过渡,为用户带来更丰富的视觉体验。在网页设计中,这种效果通常用于相册、产品展示或者广告轮播等场景。以下将详细讲解实现...

    JavaScript图片切换展示效果

    JavaScript图片切换展示效果是网页设计中常见的功能,用于在页面上动态展示多张图片,提升用户体验。这种效果可以通过JavaScript编程语言实现,结合HTML和CSS来完成。本项目中包含了一个简单的图片轮播示例,我们...

    js 图片切换 上一张下一张效果

    在JavaScript编程中,图片切换效果是一种常见的网页交互功能,它为用户提供了一种动态浏览多张图片的方式。在本文中,我们将深入探讨如何使用JavaScript实现图片切换的“上一张”和“下一张”功能。 首先,我们需要...

    12种炫酷CSS3图片切换过渡效果

    在实际应用中,这些效果可以通过组合使用,或者与其他CSS3特性(如响应式设计、Flexbox或Grid布局)相结合,来创造出更多富有创意的图片切换效果。在提供的压缩包中,`index.html`应该是示例代码的入口,`compass`...

    带前后翻页的JS图片切换效果

    "带前后翻页的JS图片切换效果"是利用JavaScript编程语言实现的一种交互式图片展示技术,它允许用户通过点击前后翻页按钮来浏览一组图片。这种效果不仅增加了网站的视觉吸引力,还使用户能够更方便地导航和浏览内容。...

    原生JS实现的图片切换效果

    通过以上步骤,你可以创建一个基本的原生JavaScript图片切换效果。在提供的压缩包"js-solid"中,可能包含了实现这一效果的代码示例和详细说明,可以作为学习和实践的参考资料。深入研究这些代码,你将对原生...

    图片切换展示效果 jpg转换SWF js图片切换 flash图片切换效果 图片自动切换效果

    图片切换展示效果 jpg转换SWF js图片切换 flash图片切换效果 图片自动切换效果

Global site tag (gtag.js) - Google Analytics