当前位置:  开发笔记 > 编程语言 > 正文

jQuery向左滑动并显示

如何解决《jQuery向左滑动并显示》经验,为你挑选了4个好方法。

我扩展了所jQuery调用的效果,slideRightShow()slideLeftHide()使用了几个slideUp()slideDown()下面相同的函数.但是,我也想实施slideLeftShow()slideRightHide().

我知道有大量的库提供这种类型的东西(我想避免添加另一大组javascript文件),但任何人都可以提供一个简单的例子来说明如何实现slideLeftShow()slideRightHide()

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.此外,他们的演示似乎已经破解,并且在投掷一百万个错误之前它只会执行一次幻灯片.



1> bendewey..:

此功能作为jquery ui http://docs.jquery.com/UI/Effects/Slide的一部分包含在内,如果您想使用自己的名称扩展它,可以使用它.

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);
    });
  }
});

你需要以下参考资料





两个ui脚本源的链接现在是:http://jquery-ui.googlecode.com/svn/tags/latest/ui/jquery.effects.core.js和"http://jquery-ui.googlecode .COM/SVN /标签/最新/ UI/jquery.effects.slide.js
非常感谢!我不知道这是jQuery效果的一部分.如果可以,我会给+2!

2> vdboor..:

不要忘记填充和边距......

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().



3> 小智..:

您可以通过在自己的脚本文件中添加这些行来为jQuery库添加新功能,并且可以轻松使用fadeSlideRight()fadeSlideLeft().

注意:您可以根据喜欢的750px实例更改动画的宽度.

$.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);
    });
}



4> Steve Grove..:

如果你想改变速度并包含回调,只需像这样添加它们:

        jQuery.fn.extend({
            slideRightShow: function(speed,callback) {
                return this.each(function() {
                    $(this).show('slide', {direction: 'right'}, speed, callback);
                });
            },
            slideLeftHide: function(speed,callback) {
                return this.each(function() {
                    $(this).hide('slide', {direction: 'left'}, speed, callback);
                });
            },
            slideRightHide: function(speed,callback) {
                return this.each(function() {  
                    $(this).hide('slide', {direction: 'right'}, speed, callback);
                });
            },
            slideLeftShow: function(speed,callback) {
                return this.each(function() {
                    $(this).show('slide', {direction: 'left'}, speed, callback);
                });
            }
        });

推荐阅读
小色米虫_524
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有