首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >jQuery向左滑动并显示

jQuery向左滑动并显示
EN

Stack Overflow用户
提问于 2009-02-06 17:36:41
回答 4查看 387.6K关注 0票数 111

我扩展了名为slideRightShow()slideLeftHide()jQuery效果,添加了两个类似于slideUp()slideDown()的函数,如下所示。然而,我也想实现slideLeftShow()slideRightHide()

我知道有大量的库提供了这种类型的东西(我想避免添加另一个大型的javascript文件集),但是谁能提供一个简单的示例来说明如何实现slideLeftShow()slideRightHide()

代码语言:javascript
复制
jQuery.fn.extend({
  slideRightShow: function() {
    return this.each(function() {
      jQuery(this).animate({width: 'show'});
    });
  },
  slideLeftHide: function() {
    return this.each(function() {
      jQuery(this).animate({width: 'hide'});
    });
  },
  slideRightHide: function() {
    return this.each(function() {
      ???
    });
  },
  slideLeftShow: function() {
    return this.each(function() {
      ???
    });
  }
});

上面的slideRightShow函数从左侧开始显示图像,然后向右侧移动。我正在寻找一些方法来做同样的事情,但是从右边开始,一直到左边。谢谢!

编辑

jQuery接口有我需要的东西(我基本上需要它们的“向右滑入”和“向左滑出”功能),但我不能让它在jQuery 1.3中工作:http://interface.eyecon.ro/demos/ifx.html。此外,他们的演示似乎已经坏了,因为在抛出一百万个错误之前,它只会做一次幻灯片。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-02-06 18:10:43

这个特性包含在jquery ui http://docs.jquery.com/UI/Effects/Slide中,如果你想用你自己的名字来扩展它,你可以使用这个。

代码语言:javascript
复制
jQuery.fn.extend({
  slideRightShow: function() {
    return this.each(function() {
        $(this).show('slide', {direction: 'right'}, 1000);
    });
  },
  slideLeftHide: function() {
    return this.each(function() {
      $(this).hide('slide', {direction: 'left'}, 1000);
    });
  },
  slideRightHide: function() {
    return this.each(function() {
      $(this).hide('slide', {direction: 'right'}, 1000);
    });
  },
  slideLeftShow: function() {
    return this.each(function() {
      $(this).show('slide', {direction: 'left'}, 1000);
    });
  }
});

您将需要以下参考资料

代码语言:javascript
复制
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script src="http://jquery-ui.googlecode.com/svn/tags/latest/ui/jquery.effects.core.js"></script>
<script src="http://jquery-ui.googlecode.com/svn/tags/latest/ui/jquery.effects.slide.js"></script>
票数 185
EN

Stack Overflow用户

发布于 2009-09-29 13:50:03

别忘了填充和边距...

代码语言:javascript
复制
jQuery.fn.slideLeftHide = function(speed, callback) { 
  this.animate({ 
    width: "hide", 
    paddingLeft: "hide", 
    paddingRight: "hide", 
    marginLeft: "hide", 
    marginRight: "hide" 
  }, speed, callback);
}

jQuery.fn.slideLeftShow = function(speed, callback) { 
  this.animate({ 
    width: "show", 
    paddingLeft: "show", 
    paddingRight: "show", 
    marginLeft: "show", 
    marginRight: "show" 
  }, speed, callback);
}

添加了速度/回调参数后,它完全可以替代slideUp()slideDown()

票数 34
EN

Stack Overflow用户

发布于 2012-07-10 15:27:12

通过在自己脚本文件中添加这些行,可以将新函数添加到jQuery库中,而且可以轻松地使用fadeSlideRight()fadeSlideLeft()

注意:你可以根据你的喜好改变750px实例的动画宽度。

代码语言:javascript
复制
$.fn.fadeSlideRight = function(speed,fn) {
    return $(this).animate({
        'opacity' : 1,
        'width' : '750px'
    },speed || 400, function() {
        $.isFunction(fn) && fn.call(this);
    });
}

$.fn.fadeSlideLeft = function(speed,fn) {
    return $(this).animate({
        'opacity' : 0,
        'width' : '0px'
    },speed || 400,function() {
        $.isFunction(fn) && fn.call(this);
    });
}
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/521291

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档