zoukankan      html  css  js  c++  java
  • 图片透明效果的切换

    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>图片透明切换效果</title>
    <style>
        *{ padding:0px; margin:0px;}
        .box{ position:relative; width:500px; height:400px; margin:50px auto; overflow:hidden;}
        div{position:absolute; top:0px; left:0px; opacity:1;}
        div img{ width:500px; height:400px;}
        .div1{ z-index:3;}
        .div2{ z-index:2;}
        .div3{ z-index:1;}
    </style>
    <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
    <script src="jquery-1.11.1.min.js"></script>
    
    <script>
        ;(function($){
            
            function PicChange(ele,opt){
                this.$parent = ele;
                this.child = this.$parent.children();
                this.btn = true;
                this.flag = true;
            }
            PicChange.prototype = {
                'init':function(){
                    this.hover();
                    this.leave();
                },
                'hover':function(){
                    var objWidth = parseInt(this.$parent.outerWidth(true));
                    var objHeight = parseInt(this.$parent.outerHeight(true));
                    var x = [-objWidth,objWidth];
                    var y =  [-objHeight,objHeight];
                    var _this = this;
                    this.child.on('mouseover',function(){
                        if(_this.btn&&_this.flag){
                            _this.btn = false;
                            _this.flag = false;
                            var n = Math.round(Math.random()*1);
                            var m = Math.round(Math.random()*1);
                            if(n){
                                $(this).animate({'left':x[m],'opacity':0},1000,function(){
                                    _this.callBack($(this));
                                    _this.flag = true;
                                });
                            }else{
                                $(this).animate({'top':y[m],'opacity':0},1000,function(){
                                    _this.callBack($(this));
                                    _this.flag = true;
                                });
                            }
                        }
                    });            
                },
                'leave':function(){
                    var _this = this;
                    this.$parent.on('mouseleave',function(){
                        _this.btn = true;
                    });
                },
                'callBack':function(obj){
                    obj.css({
                        'left':0,
                        'top':0,
                        'opacity':1,
                        'z-Index':1
                    });
                    
                    this.child.not(obj).each(function(index, element) {
                        var nowIndex=parseInt($(this).css('z-index'));
                        $(this).css('z-index',nowIndex+1);
                    });
                    
                }    
            }
            
            $.fn.picChange = function (opt){
                var oChange = new PicChange(this,opt);
                return oChange.init(); 
            }
        })(jQuery);
        
        $(function(){
            $('.box').picChange();//插件形式调用
        });    
    </script>
    <script>
        /*$(function(){
            
            var $div = $('div').not('.box');
            var $box = $('.box');
            var btn = true;
            var flag = true;
            var objwidth = $('.box').width();
            var px = [100,-100];
            $div.mouseover(function(){    
                if(btn&&flag){
                    btn = false;
                    flag = false;
                    var n = Math.round(Math.random()*1);
                    var m = Math.round(Math.random()*1);
                    if(n){
                        $(this).animate({'left':px[m],'opacity':0},1000,function(){
                            callBack($(this));
                            flag = true;
                        });
                    }else{
                        $(this).animate({'top':px[m],'opacity':0},1000,function(){
                            callBack($(this));
                            flag = true;
                        });
                    }
                }
            });
            $box.mouseleave(function(){
                btn = true;    
            });
            
            function callBack(obj){
                obj.css({
                    'left':0,
                    'top':0,
                    'opacity':1,
                    'z-Index':1
                });
                $div.not(obj).each(function(index, element) {
                    var nowIndex=parseInt($(this).css('z-index'));
                    $(this).css('z-index',nowIndex+1);
                });
            };
        });*/
    </script>
    </head>
    
    <body>
        <div class="box">
            <div class="div1"><img src="http://f.hiphotos.baidu.com/image/pic/item/80cb39dbb6fd526695449c19a918972bd407364b.jpg"/></div>
            <div class="div2"><img src="http://e.hiphotos.baidu.com/image/pic/item/2934349b033b5bb51d5395f734d3d539b600bc37.jpg"/></div>
            <div class="div3"><img src="http://e.hiphotos.baidu.com/image/pic/item/03087bf40ad162d9467e381d13dfa9ec8a13cd1b.jpg"/></div>
        </div>
    </body>
    </html>

    工作要用到的效果 扩展插件的形式方便调用

  • 相关阅读:
    css3样式二
    CSS3样式
    css基础样式四
    css样式基础三
    CSS样式基础二
    Css样式基础
    html(二)
    html(一)
    Linux 下 Memcached 缓存服务器安装配置
    java.lang.OutOfMemoryError: Java heap space解决方法
  • 原文地址:https://www.cnblogs.com/senhero/p/4159118.html
Copyright © 2011-2022 走看看