我创建了一种方法,可以在鼠标悬停时在图像的一侧显示黑条.当它只有一个图像时,一切都很好,但是当应用于多个图像时,如果鼠标悬停,则两个图像上都会出现黑条.
是否可以让每个图像彼此独立地操作,以便鼠标悬停事件仅激活该特定图像的黑条?
jsFiddle - http://jsfiddle.net/7kw8z/11/
我通过这个方法调用 $("img.edit").panzoom();
这是方法:
!function($){
$.fn.panzoom = function() {
var $this = $(this);
this.imagesLoaded(function(){
$this.wrap('<div class="img_wrapper" />');
var imgEl = $this.parent(".img_wrapper");
imgEl.width($this.width());
imgEl.height($this.height());
//imgEl.offset({top:$this.offset().top,left:$this.offset().left});
imgEl.append('<div class="img_menu" />');
menuEl = imgEl.children(".img_menu");
imgEl.hover(function() {
$(menuEl).css("visibility", "visible");
}, function() {
$(menuEl).css("visibility", "hidden");
});
});
}
}(window.jQuery);
Run Code Online (Sandbox Code Playgroud)
你可以做
$.fn.panzoom = function() {
return this.each(function(){
var $this = $(this);
$this.imagesLoaded(function(){
$this.wrap('<div class="img_wrapper" />');
var imgEl = $this.parent(".img_wrapper");
imgEl.width($this.width());
imgEl.height($this.height());
imgEl.append('<div class="img_menu" />');
var menuEl = imgEl.children(".img_menu");
imgEl.hover(function() {
menuEl.css("visibility", "visible");
}, function() {
menuEl.css("visibility", "hidden");
});
});
});
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
361 次 |
| 最近记录: |