`
cloudgamer
  • 浏览: 61096 次
  • 性别: Icon_minigender_1
  • 来自: 顺德
社区版块
存档分类
最新评论

JavaScript 图片滑动展示效果

阅读更多

看到jQuery实例:图片展示效果后,我也想拿来试试,但我不太喜欢用框架,所以自己做了个。
其中的难点在于怎么设计各个滑动对象进行想要的滑动。
一开始我想的是利用滑动对象的宽度的变化来实现滑动,
但实行起来发现这个只能在理想状态下实现,一般实现起来很困难。
所以还是参照了实例中的方法,利用left的变化来实现滑动。

 



 

 

 

效果预览

下载完整测试代码

 

程序原理:

设计之初,先不要考虑文本显示那部分,把重心放到滑动效果的实现上,
减少设计负担,这是小小的技巧吧。

总体的思路是通过移动各个滑动对象到指定的位置来实现不同的效果。
效果有两种,分部是:鼠标移出容器时的默认效果和鼠标移到某个滑动对象时的展示效果。
根据效果可以看出,滑动对象有三种宽度一个是默认宽度,最大宽度和最小宽度。
这些宽度都可以在初始化时设置:
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->this._list = oContainer.getElementsByTagName(sTag);
len 
= this._list.length;
this._count = len;
this._width = parseInt(iWidth / len);
this._width_max = parseInt(iMaxWidth);
this._width_min = parseInt((iWidth - this._width_max) / (len - 1));

 

我给每个滑动对象添加了一个_target属性来放一个目标值,用来告诉它要滑到哪里。

移动之前先执行Set()程序,给每个对象设置目标值,要分两种情况:

1.鼠标移出容器:这时只要设置滑动对象的目标值为默认宽度*索引值就行;

oList._target = this._width * i;

2.鼠标移到某个滑动对象上:把当前对象和之前的滑动对象的目标值设为最小宽度*索引值,之后的对象设为最小宽度*(索引值-1)加上最大宽度(因为这样会算多一个最小宽度所以要减1个),这样设置就能得到要实现的效果:

oList._target = (i <= index) ? this._width_min * i : this._width_min * (i - 1+ this._width_max;

 接下来就是怎么移动到目标值了,这个在Move()程序中实现。
首先移动效果是通过用计时器逐步设置滑动对象的left来实现,减速部分用一个GetStep()程序来实现(相关说明请看JavaScript 图片切换展示效果)。
不断移动,直到所有滑动对象都到达目标值:
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->clearTimeout(this._timer);
var bFinish = true;
this.Each(function(oList, oText, i){
    
var nowLeft = parseInt(oList.style.left), iLeftStep = this.GetStep(oList._target, nowLeft);
    
if (iLeftStep != 0) { bFinish = false; oList.style.left = (nowLeft + iLeftStep) + "px"; }
})
if (!bFinish) { var oThis = thisthis._timer = setTimeout(function(){ oThis.Move(); }, this.Time); }

 这个程序本身的难度不高,就难在程序设计,例如怎么实现变化的效果(由于有实例难度就没那么高了)。
还有一个思想是把“移动到指定目标”这个任务分派到各个滑动对象,
主程序只要知道是否各个滑动对象都到达指定目标就行了,
这在给滑动对象设置_target属性和Each()程序的应用中能体现出来。
如果每次移动都由主程序来计算(试想想没有这个_target属性),难度会大大增加,
而设计之初很容易会陷入这个死胡同。

还有一点是容器的mouseout事件中,要先判断鼠标是否在容器外(相关说明请看JavaScript 自定义多级联动浮动菜单)。

扩展功能:

可以设置的属性:
Step: 滑动变化率;
Time: 滑动延时;
TextTag: 说明容器tag;
TextHeight: 说明容器高度;
Delay: 延迟值(微秒);
Showtext:是否显示说明文本;

能实现什么功能就看各位的想象力了。

程序测试:

实例化对象:

new GlideView("idGlideView"1000"div"500, { TextTag: "a", TextHeight: 50 });

其中参数分别是容器对象,容器宽度,展示标签,展示宽度,最后是一些设置。

  • 大小: 79 KB
  • 大小: 21.9 KB
分享到:
评论

相关推荐

    JavaScript图片滑动切换效果

    JavaScript图片滑动切换效果是一种常见的网页动态展示技术,尤其在电商网站如淘宝和阿里巴巴上广泛使用,用于商品图片的展示。这种效果通过JavaScript编程实现,能够实现图片的自动轮播、手动点击切换、过渡动画等...

    JavaScript 图片滑动切换效果

    JavaScript图片滑动切换效果是网页动态展示中常见的一种交互设计,它通过JavaScript编程语言实现图片在页面上自动或手动平滑地从一张过渡到另一张,增强了用户体验,尤其适用于产品展示、幻灯片或者轮播广告等场景。...

    javaScript 图片滑动效果 代码

    总结来说,JavaScript图片滑动效果的实现涉及HTML结构、CSS样式以及JavaScript逻辑。通过学习这些基础知识并结合实践,你可以创建出各种各样的滑动组件,提升网页的交互性和吸引力。在实际项目中,还应考虑性能优化...

    JavaScript 图片滑动幻灯效果

    JavaScript图片滑动幻灯效果是一种常见的网页动态展示技术,它能够自动或手动切换一组图片,为网站增添视觉吸引力。在不依赖Flash等插件的情况下,JavaScript可以实现这种效果,为用户提供流畅、美观的图片浏览体验...

    JavaScript图片切换滑动效果

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

    js图片滑动切换效果

    图片滑动切换效果通常基于时间间隔或用户交互(如点击按钮)来改变显示的图片。JS可以监听这些事件,并更新HTML中的图片元素,使其呈现出平滑过渡的效果。主要涉及的知识点包括DOM操作、定时器(setTimeout或...

    javascript图片滑动效果实现

    JavaScript图片滑动效果是一种常见的网页交互效果,通过鼠标悬停(mouseover)或者移开(mouseout)触发图片的滑动展示或隐藏。这种效果可以应用于图片画廊、产品展示等多种场景,增加页面的动态性和用户体验。 ###...

    网站首页图片滑动切换效果

    "网站首页图片滑动切换效果" 是一种常见的网页设计手法,它通过动态展示多张图片来增加网站的吸引力和互动性。这种效果通常用于展示产品、服务或者公司形象,为用户带来更生动的浏览体验。 实现这种效果的方法多种...

    JavaScript图片切换展示效果.rar

    这个“JavaScript图片切换展示效果.rar”压缩包文件包含了一个使用纯JavaScript实现的图片自动切换功能,旨在帮助开发者了解如何在不依赖外部库如jQuery或Bootstrap的情况下创建这种效果。 首先,我们需要理解...

    网页模板——SlideView javascript图片滑动扩展收缩展示效果.zip

    网页模板——SlideView javascript图片滑动扩展收缩展示效果是一种常见的前端设计技术,它主要用于网站的图像展示,尤其在产品展示、相册浏览或新闻资讯页面中广泛应用。这种效果通过JavaScript库实现,允许用户以...

    js javascript 图片滑动新闻展示,鼠标控制图片左右滚动【转】

    在本案例中,“js javascript 图片滑动新闻展示,鼠标控制图片左右滚动”是一个使用JavaScript实现的动态图片展示功能,它允许用户通过鼠标操作来控制图片的左右滚动,为网站增添生动性和用户体验。 首先,我们要...

    超酷JS图片滑动展示效果(支持滚轮Flash也未必能如此完美).zip

    在JavaScript的世界里,实现超酷的图片滑动展示效果已经成为网页设计中不可或缺的一部分。这个"超酷JS图片滑动展示效果(支持滚轮Flash也未必能如此完美)"的压缩包,提供了一种高效的解决方案,它可能包含了一个或多...

    炫酷css3图片滑动切换效果

    在本例中,我们关注的是一个名为“炫酷css3图片滑动切换效果”的项目,它是一个完全基于CSS3的图片滑动展示解决方案。 CSS3是CSS(层叠样式表)的第三个版本,引入了诸多新功能和改进,如选择器、边框和背景、文本...

    苹果mac图片滑动效果,滑动javascript特效

    本文将深入探讨如何利用JavaScript来创建类似苹果Mac系统的图片滑动效果。 首先,JavaScript是一种在网页上实现动态交互的强大工具。它可以操作DOM(Document Object Model)元素,改变页面内容,如图片显示和隐藏...

    SlideView javascript图片滑动扩展收缩展示效果.zip

    SlideView 是一个基于JavaScript的前端库,主要用于实现图片的滑动和扩展收缩展示效果。这种效果常见于许多网站的图片画廊或产品展示模块,它提供了用户友好的交互体验,让用户能够轻松浏览和查看一系列图片。 在...

    jquery 写的图片滑动展示效果

    **jQuery 图片滑动展示效果详解** 在网页设计中,图片滑动展示是一种常见的功能,用于展示一组图片并以动态的方式切换,为用户提供更丰富的视觉体验。本篇将深入讲解如何使用jQuery实现一个图片滑动展示效果,尤其...

    仿Apple官网风格的产品图片滑动展示效果

    本项目旨在实现"仿Apple官网风格的产品图片滑动展示效果",这是许多设计师和开发者追求的目标,因为Apple的官网以其简洁、优雅和高效的用户交互体验而闻名。 首先,我们要理解Apple官网产品展示的核心特点。这种...

    图片滑动 图片 图片幻灯片 图片滑动效果

    在IT行业中,图片滑动效果通常用于网页设计和应用程序开发,以展示一组图片并让它们以平滑的方式过渡,提供用户友好的体验。...通过合理选择和运用技术,我们可以创造出既美观又实用的图片滑动展示。

Global site tag (gtag.js) - Google Analytics