随机图片滚动

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<script type="text/javascript" src="float.js">
</script>
<script type="text/javascript">
window.onload = function ()
{
    var ali = document.getElementsByTagName(‘li‘);
    var flag = 0;

    for(var i = 0; i < ali.length; i++)
    {
        fnshow(ali[i]);
    }

    function fnshow (li)
    {
        var odiv = li.getElementsByTagName(‘div‘)[0];
        function fnshowone ()
        {
            setTimeout(function ()
            {
                flag = flag == 0?-50:0;
                domove(odiv,‘top‘,10,80,flag,fnshowone);
            },Math.round(Math.random()*2000+1000));
        }

        fnshowone();

    };
};
</script>
<style>
ul{
    margin:50px auto;
    width:220px;
    }
li{
    display:inline-block;
    width:100px;
    height:50px;
    overflow:hidden;
    position:relative;
    list-style-type:none;
    }
div{
    position:absolute;
    left:0px;
    top:0px;
    }
img{
    width:100px;
    height:50px;
    }
</style>
</head>

<body>
<ul>
    <li>
        <div>
            <img src="img/5-1.jpg">
            <img src="img/5-2.jpg">
        </div>
    </li>
    <li>
        <div>
            <img src="img/5-3.jpg">
            <img src="img/5-4.jpg">
        </div>
    </li>
    <li>
        <div>
            <img src="img/5-5.jpg">
            <img src="img/5-6.jpg">
        </div>
    </li>
    <li>
        <div>
            <img src="img/5-7.jpg">
            <img src="img/5-8.jpg">
        </div>
    </li>
    <li>
        <div>
            <img src="img/5-9.jpg">
            <img src="img/5-10.jpg">
        </div>
    </li>
    <li>
        <div>
            <img src="img/5-11.jpg">
            <img src="img/5-12.jpg">
        </div>
    </li>
    <li>
        <div>
            <img src="img/5-13.jpg">
            <img src="img/5-14.jpg">
        </div>
    </li>
    <li>
        <div>
            <img src="img/5-15.jpg">
            <img src="img/5-16.jpg">
        </div>
    </li>
</ul>
</body>
</html>
function getstyle(obj,attr)
{
    return obj.currentStyle?obj.currentStyle[attr]:getComputedStyle(obj)[attr];
}

function domove (obj,attr,step,frequency,target,endfn)
{
    step = parseInt(getstyle(obj,attr))<target?step:-step;
    clearInterval(obj.timer);
    obj.timer = setInterval( function ()
    {
        var speed = parseInt(getstyle(obj,attr)) + step;
        if(step>0&&speed>target||step<0&&speed<target)
        {
            speed = target;
        }
        obj.style[attr] = speed + ‘px‘;
        if( speed == target )
        {
            clearInterval(obj.timer);
            endfn&&endfn();
        }
    },frequency);
};

function opacity(obj,step,target,frequency,endfn)
{
    var currentOpacity = getstyle(obj,‘opacity‘) * 100;
    step = currentOpacity < target?step:-step;
    clearInterval(obj.opacity)
    obj.opacity = setInterval (function ()
    {
        currentOpacity = getstyle(obj,‘opacity‘) *100;
        var nextOpacity = currentOpacity + step;
        if(step>0&& nextOpacity>target || step<0&& nextOpacity < target )
        {
            nextOpacity = target;
        }
    obj.style.opacity = nextOpacity/100;
    obj.style.filter = ‘alpha(opacity:)‘ + nextOpacity +‘)‘;
    if(nextOpacity == target )
    {
        clearInterval(obj.opacity);
        endfn&&endfn();
    }
    },frequency);

};

function shake(obj,attr,endfn)
{
    if( obj.shaked ) { return;  }
    obj.shaked = true;

    var num = 0;
    var timer = null;
    var arr = [];
    var pos = parseInt(getstyle(obj,attr));

    for( var i = 20; i > 0; i-=2 )
    {
        arr.push(i,-i);
    }
    arr.push(0);

    clearInterval(obj.shake);
    obj.shake = setInterval(function ()
    {
        obj.style[attr] = pos + arr[num] +‘px‘;
        num++;
        if(num==arr.length)
        {
            clearInterval(obj.shake);
            endfn&&endfn();
            obj.shaked = false;
        }
    },50);
};
时间: 2024-09-29 16:35:10

随机图片滚动的相关文章

随机图片滚动(随机数+变化函数),可运行

<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>随机图片滚动</title> <!--可成功执行,布局有点混乱...懒得改了.需要一个js文件,在上一文章中有--> <style type="text/css"> *{ padding:0; margin: 0;

原生js实现tab选项卡里内嵌图片滚动特效代码

<!DOCTYPE HTML><html lang="en-US"><head><meta charset="UTF-8"><title>原生js实现tab选项卡里内嵌图片滚动特效代码</title><meta name="keywords" content="原生js实现tab选项卡里内嵌图片滚动特效代码" /><meta name=&

jquery mobile的一些插件(图片滚动)

jquery mobile的一些插件(图片滚动) 1,photoswipe 网址:http://www.photoswipe.com/demo: http://www.photoswipe.com/latest/examples/04-jquery-mobile.html个人描述:在手机上操作很流畅,能自使用屏幕尺寸,竖屏显示效果很好,横屏图片太大了,也就是列数固定的原因. 2,Touch-Gallery 网址:http://neteye.github.com/touch-gallery.htm

Android高级图片滚动控件,编写3D版的图片轮播器

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/17482089 大家好,好久不见了,最近由于工作特别繁忙,已经有一个多月的时间没写博客了,我也是深感惭愧.那么今天的这篇既然是阔别了一个多月的文章,当然要带来更加给力点的内容了,那么话不多说,赶快进入到今天的正题吧. 说 到图片轮播器,很多的Android应用中都会带有这个功能,比如说网易新闻.淘宝等.最新我们公司的一款应用也加入了这个功能,并且在图片轮播的基础上 还增加了三维立体

12-25 学习图片滚动器

// //  ViewController.m //  图片滚动器 // //  Created by Mac on 15/12/25. //  Copyright © 2015年 Mac. All rights reserved. // #import "ViewController.h" @interface ViewController () <UIScrollViewDelegate> //从stroyboad中拖来的控件 @property (weak, nona

android 背景图片滚动

昨天在给客户端做天气展示页面的时候,发现很多app的天气页面背景图片都会缓慢移动,形成了一种3d的感觉.例如下雨,静态图片缓慢移动,雨滴位置变换感觉就真的在下雨.云朵的移动也很酷.于是研究了一下午.写了一个自定义view控件. 我的自定义控件继承了view,重写ondraw方法.本人C#转android才3个月,以下代码如有错或者有可以改进的地方,请各位在评论中指出.望不吝赐教! ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

图片滚动(待美化)

1:原有图片4张,无论向左或者向右滚动,都会出现空白,所以需要在原有4张图片的基础下自加得到8张图片, 2:向左滚动:当图片滚到到整个ul宽度的一半时(aDiv.offsetLeft<-aDiv.offsetWidth/2) 将整个ul的左边距置0(aDiv.style.left='0px';),通俗说即将整个图片从左往右第一张图片拉倒最开始的位置. 3:向右滚动:当图片滚动到ul的左边距大于0时(aDiv.offsetLeft>0) 将整个ul的左边距设为整个ul宽度的一半(aDiv.sty

JS 图片滚动懒加载

基本原理 图片滚动懒加载的原理非常简单:基于<img>标签,在初次加载时,不把图片url放在src属性中,而是自定义一个属性,例如data-src.然后检测"scroll","resize"等窗体事件,判断图片是否进入了可视范围.如果进入,则将data-src的字段替换到src,此时浏览器会自动去加载对应图片资源. 首先是不添加src的img标签,新增data-src用于放置图片url: <img class="lazyImg"

常用JS图片滚动(无缝、平滑、上下左右滚动)代码大全

常用JS图片滚动(无缝.平滑.上下左右滚动)代码大全 今天刚网上看的 不多说直接帖代码---- <head><-----></head><body> <!--向下滚动代码开始--><div id="colee" style="overflow:hidden;height:253px;width:410px;"><div id="colee1"><p>&