【澳门葡京】选择jQuery实现图片遮罩半晶莹剔透坠落遮挡,基于jquery的二个图形hover的插件

默许九宫格图片排列效果,当鼠标悬停在图片上后,会从图纸的上面下滑三个半透明遮罩的效率

动用jQuery完成图片遮罩半晶莹剔透坠落遮挡,jquery遮罩

暗中认可九宫格图片排列效果,当鼠标悬停在图纸上后,会从图片的下边下滑三个半晶莹剔透遮罩的成效

与此同一时候出现部分文字介绍

使用方法:

1、将head中的css样式引进到您的网页中
2、将代码部分拷贝到你的网页body甘休前的地点就可以
(js、图片采用相对路线,不建议修改)

复制代码 代码如下:
$(function(){
    $(‘.sgw_img dt’).hover(function(){
       
$(this).children(‘.box’).stop(true,true).delay(100).animate({‘top’:0,opacity:0.8},300);
    },function(){
       
$(this).children(‘.box’).stop(true,true).animate({‘top’:-482,opacity:0},200);
    })
    $(‘.sgw_img dd’).hover(function(){
       
$(this).children(‘.box’).stop(true,true).delay(100).animate({‘top’:0,opacity:0.8},300);
    },function(){
       
$(this).children(‘.box’).stop(true,true).animate({‘top’:-382,opacity:0},200);
    })
})

上述就是本文分享的全体内容了,希望咱们能够喜欢。

澳门葡京,
私下认可九宫格图片排列效果,当鼠标悬停在图片上后,会从图纸的上面下滑二个半透明遮罩…

先来探视使用方式。
演示地址
【澳门葡京】选择jQuery实现图片遮罩半晶莹剔透坠落遮挡,基于jquery的二个图形hover的插件。HTML文件中如此写:

何况现身有的文字介绍

复制代码 代码如下:

采用格局:

<div class=”jcutter”>
<img src=”1.jpg” alt=””>
<div class=”jcutter-content”>
那是点开后的页面包车型大巴内容
</div>
     </div>

1、将head中的css样式引进到你的网页中
2、将代码部分拷贝到你的网页body截止前的地点就能够
(js、图片应用相对路线,不建议修改)

调用的话要求如此写:

复制代码 代码如下:

复制代码 代码如下:

$(function(){
    $(‘.sgw_img dt’).hover(function(){
       
$(this).children(‘.box’).stop(true,true).delay(100).animate({‘top’:0,opacity:0.8},300);
    },function(){
       
$(this).children(‘.box’).stop(true,true).animate({‘top’:-482,opacity:0},200);
    })
    $(‘.sgw_img dd’).hover(function(){
       
$(this).children(‘.box’).stop(true,true).delay(100).animate({‘top’:0,opacity:0.8},300);
    },function(){
       
$(this).children(‘.box’).stop(true,true).animate({‘top’:-382,opacity:0},200);
    })
})

$(document).ready(function(){
options={
‘speedIn’:600, //图片步向时候的卡通速度
‘speedOut’:400, //图片退出时候的卡通片速度
‘easeIn’:’easeOutBounce’,
//图片步向时候的动画片效果,这几个作用须求easing库
‘easeOut’:” //图片退出时候的动画效果
}
$(‘.jcutter’).jCutter(options);
})

上述正是本文分享的全体内容了,希望我们能够喜欢。

自然要援用那几个插件才行。上面我们来上课那么些插件的编排。
一、jQuery插件编写的秘籍
写五个jQuery插件,首先须要部分不可或缺的构造,如下所示:

您大概感兴趣的稿子:

  • jQuery移动页面开荒中的触摸事件与设想鼠标事件简要介绍
  • jQuery鼠标事件汇总
  • jQuery响应鼠标事件并逃匿与突显input默许值
  • IE8下jQuery改换png图片发光度时出现的黑边
  • jQuery
    fadeTo方法调整图片的光滑度使用介绍
  • jQuery图片轮播的切切实实落到实处
  • 据他们说Jquery的大约图片切换效果
  • Jquery达成点击切换图片并掩饰展现内容(2种艺术完结)
  • jQuery-onload让第叁遍页面加载时图片是淡入方式显示
  • Jquery中使用show()与hide()方法动画显示和藏身图片
  • jQuery完毕响应鼠标事件的图形透明效果【附demo源码下载】

复制代码 代码如下:

(function($){
$.fn.jCutter = function(o){
o = $.extend({
speedIn: 300,
speedOut: 300,
easeIn: ”,
easeOut: ”
}, o || {});
};
})(jQuery);

这几个布局和大家最后的结果有些出入,不过轮廓上jQuery插件的布局正是这么。
率先要写成贰个闭包的款式,不传染命名空间,然后遵照jQuery提供的接口来编排,这里的jCutter可以改成你协和插件的名字。$.extend是二个至极风趣的函数,他会将率先个和第4个参数合併,对于五个参数中都出现的值,用后世代替后面一个。
二、起初编写制定
在这些例子中,因为要用到接纳器,所以我们做一些改换,结构改成如下的规范。

复制代码 代码如下:

(function($){
$.jCutter = function(node, o){
o = $.extend({
speedIn: 300,
speedOut: 300,
easeIn: ”,
easeOut: ”
}, o || {});
var that = this;
that.init = function(){
};
that.generate = function(){
};
that.cutter = function(){
};
that.init();
};
$.fn.jCutter = function(o){
return this.each(function(i){
$.jCutter(this,o);
});
};
})(jQuery);

$.jCutter的含义是给jQuery增多一个类,那样我们操作起来方便一些。通过上边的布局大家得以知晓的看来程序的逻辑,init()用来拓展部分起头化的职分,然后用generate()来扭转须要的结构,最后用cutter()来实现动画和事件效果。
三、初始化程序
内需起头化的事物根本是局部参数,然后找到须求开始展览修改的图纸,最终举办渲染。都以部分相比较简单的操作。

复制代码 代码如下:

that.init = function(){
that.node = $(node);
that.img = that.node.find(‘img’);
that.speedIn = o.speedIn;
that.speedOut = o.speedOut;
that.easeIn = o.easeIn;
that.easeOut = o.easeOut;
that.generate();
that.cutter();
};

四、生成要求的构造
那么些功效的准则正是:大家把图纸复制到多个层里面,然后将那多少个层绝对牢固,再把这几个图拼起来,那样动画效果就会落得了。

复制代码 代码如下:

that.generate = function(){
var w = that.node.width() / 2;
var h = that.node.height() / 2;
that.imga = [];
for (var i = 0; i < 4; i++) {
that.imga[i] = document.createElement(‘div’);
that.imga[i] = $(that.imga[i]);
that.imga[i].css({
‘position’: ‘absolute’,
‘z-index’: ‘2’,
‘width’: w,
‘height’: h,
‘background’: ‘url(“‘ + that.img.attr(“src”) + ‘”) no-repeat’
});
$(that.node).append(that.imga[i]);
}
that.imga[0].css({
‘left’: ‘0px’,
‘top’: ‘0px’
});
that.imga[1].css({
‘right’: ‘0px’,
‘top’: ‘0px’,
‘background-position’: ‘-‘ + w + ‘px’ + ‘ 0px’
});
that.imga[2].css({
‘left’: ‘0px’,
‘bottom’: ‘0px’,
‘background-position’: ‘0px’ + ‘ -‘ + h + ‘px’
});
that.imga[3].css({
‘right’: ‘0px’,
‘bottom’: ‘0px’,
‘background-position’: ‘-‘ + w + ‘px ‘ + ‘-‘ + h + ‘px’
});
that.img.remove();
};

此处的代码也比较轻易,首先获得外面层的升幅和可观,然后总结,再生成多少个层,给三个层写入相应的地方代码,供给小心的是,外面层的position属性要设置为relative,要么里面包车型客车层就无法准鲜明位了。这里其实能够直接写入相应的html代码,但是为了表现清晰,大家使用了比较明朗的写法,先生成一个div,然后赋给她有的css属性。
五、增多动画功能,注册事件管理程序
成就了结构的天职,下一步便是给她增添动画成效了,大家只必要将那八个图层在鼠标经过的时候移出外面包车型大巴层,然鼠标离开的时候再重置就足以了,写起来也是老大的简要,看代码:

复制代码 代码如下:

that.cutter = function(){
var w = that.node.width() / 2;
var h = that.node.height() / 2;
that.node.hover(function(){
that.imga[0].stop().animate({
‘left’: ‘-‘ + w,
‘top’: ‘-‘ + h
}, that.speedOut, that.easeOut);
that.imga[1].stop().animate({
‘right’: ‘-‘ + w,
‘top’: ‘-‘ + h
}, that.speedOut, that.easeOut);
that.imga[2].stop().animate({
‘left’: ‘-‘ + w,
‘bottom’: ‘-‘ + h
}, that.speedOut, that.easeOut);
that.imga[3].stop().animate({
‘right’: ‘-‘ + w,
‘bottom’: ‘-‘ + h
}, that.speedOut, that.easeOut);
}, function(){
that.imga[0].stop().animate({
‘left’: 0,
‘top’: 0
}, that.speedIn, that.easeIn);
that.imga[1].stop().animate({
‘right’: 0,
‘top’: 0
}, that.speedIn, that.easeIn);
that.imga[2].stop().animate({
‘left’: 0,
‘bottom’: 0
}, that.speedIn, that.easeIn);
that.imga[3].stop().animate({
‘right’: 0,
‘bottom’: 0
}, that.speedIn, that.easeIn);
})
};

.stop()函数的功力就是只要在事件再一次启程的时候,上二遍的卡通还在拓展中的话,就甘休动画,那样效果进一步自然一些。that.easeIn和that.easeOut参数是用来设置动画的方式的,暗中认可的jQuery库独有二种简易的线性库,能够下载jQuery.easing库来增添越来越多亮丽的作用。
那样就实现了那一个插件的编纂,完整的代码如下:

复制代码 代码如下:

(function($){
$.jCutter = function(node, o){
o = $.extend({
speedIn: 300,
speedOut: 300,
easeIn: ”,
easeOut: ”
}, o || {});
var that = this;
that.init = function(){
that.node = $(node);
that.img = that.node.find(‘img’);
that.speedIn = o.speedIn;
that.speedOut = o.speedOut;
that.easeIn = o.easeIn;
that.easeOut = o.easeOut;
that.generate();
that.cutter();
};
that.generate = function(){
var w = that.node.width() / 2;
var h = that.node.height() / 2;
that.imga = [];
for (var i = 0; i < 4; i++) {
that.imga[i] = document.createElement(‘div’);
that.imga[i] = $(that.imga[i]);
that.imga[i].css({
‘position’: ‘absolute’,
‘z-index’: ‘2’,
‘width’: w,
‘height’: h,
‘background’: ‘url(“‘ + that.img.attr(“src”) + ‘”) no-repeat’
});
$(that.node).append(that.imga[i]);
}
that.imga[0].css({
‘left’: ‘0px’,
‘top’: ‘0px’
});
that.imga[1].css({
‘right’: ‘0px’,
‘top’: ‘0px’,
‘background-position’: ‘-‘ + w + ‘px’ + ‘ 0px’
});
that.imga[2].css({
‘left’: ‘0px’,
‘bottom’: ‘0px’,
‘background-position’: ‘0px’ + ‘ -‘ + h + ‘px’
});
that.imga[3].css({
‘right’: ‘0px’,
‘bottom’: ‘0px’,
‘background-position’: ‘-‘ + w + ‘px ‘ + ‘-‘ + h + ‘px’
});
that.img.remove();
};
that.cutter = function(){
var w = that.node.width() / 2;
var h = that.node.height() / 2;
that.node.hover(function(){
that.imga[0].stop().animate({
‘left’: ‘-‘ + w,
‘top’: ‘-‘ + h
}, that.speedOut, that.easeOut);
that.imga[1].stop().animate({
‘right’: ‘-‘ + w,
‘top’: ‘-‘ + h
}, that.speedOut, that.easeOut);
that.imga[2].stop().animate({
‘left’: ‘-‘ + w,
‘bottom’: ‘-‘ + h
}, that.speedOut, that.easeOut);
that.imga[3].stop().animate({
‘right’: ‘-‘ + w,
‘bottom’: ‘-‘ + h
}, that.speedOut, that.easeOut);
}, function(){
that.imga[0].stop().animate({
‘left’: 0,
‘top’: 0
}, that.speedIn, that.easeIn);
that.imga[1].stop().animate({
‘right’: 0,
‘top’: 0
}, that.speedIn, that.easeIn);
that.imga[2].stop().animate({
‘left’: 0,
‘bottom’: 0
}, that.speedIn, that.easeIn);
that.imga[3].stop().animate({
‘right’: 0,
‘bottom’: 0
}, that.speedIn, that.easeIn);
})
};
that.init();
};
$.fn.jCutter = function(o){
return this.each(function(i){
$.jCutter(this,o);
});
};
})(jQuery);

很简单有趣的功力,逻辑很了然,代码也大概,是练手的好东东。
包装下载地址
//www.jb51.net/jiaoben/26031.html

你或然感兴趣的小说:

  • jQuery hover
    延时器完成代码
  • JQuery入门——事件切换之hover()方法运用介绍
  • jQuery用unbind方法去掉hover事件及另外办法介绍
  • Jquery的hover方法让鼠标经过li时背景变色
  • jQuery的live()方法对hover事件的管理示例
  • jQuery
    鼠标经过(hover)事件的延时处理示例
  • JQuery中接纳on方法绑定hover事件实例
  • jQuery落成鼠标经过事件的延时管理成效

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*
*
Website