0

我正在使用 jquery ui 工具覆盖插件,它几乎 100% 工作,但是当我单击打开图像并向下滚动图像棒时。我很快发现这是因为脚本将定位设置为固定。但是,当我使用文档http://jquerytools.org/demos/overlay/custom-effect.html中提供的配置更改定位时,我仍然得到相同的结果。该网站是 marccasavant.com

4

2 回答 2

1

这比看起来更复杂......确实,您只需positionfrom更改fixedabsolute,但由于它是由覆盖插件完成的,您不能只在 css 中设置它,您需要在-飞。

我想出的解决方案是声明一个自定义效果:

$.tools.overlay.addEffect("change", function(css, done) {
css.position = 'absolute';
overlay = this.getOverlay();
   overlay.css(css).show();
   overlay.animate({
      top: '+=55',  opacity: 1,  width: '+=20'
      }, 400, done
   );
   done.call();
}, function(done) {
   this.getOverlay().animate({
      top:'-=55', opacity:0, width:'-=20'
   }, 300, function() {
      $(this).hide();
      done.call();
   });

});

谁只是更改 cssposition属性(并做一些动画,你显然可以改变),并做默认的东西。然后在初始化叠加层时添加它:

$(document).ready(function() {
   $("img[rel]").overlay({effect: 'absolute'});
});

我使用了本教程: http: //jquerytools.org/demos/overlay/custom-effect.html并删除了他们的自定义放置效果,并添加了定位更改。

于 2012-12-21T16:10:17.333 回答
0

我使用开发人员工具将位置更改为“绝对”,它按预期工作。验证配置是否应用绝对位置,否则使用 jQuery 修改 css:

$('.simple_overlay').css('position', 'absolute');
于 2012-12-21T14:30:56.007 回答