如何将Mootools代码转换为jQuery代码以向下滑动,然后滚动到#current?

发布于 2024-12-10 13:03:20 字数 993 浏览 0 评论 0原文

我想知道 Mootools 是否有像 onStartonComplete 这样的 API,这让我很好奇我从哪里获得这些 jQuery API...有一个示例脚本:

var slidez = null;
function closeOpen(ref) {
    //return
    if (ref != slidez && slidez.wrapper.offsetHeight > 0) {
        slidez.slideOut();
    }
}

window.addEvent('domready', function() {
    slidez = new Fx.Slide('hello_content', {
        duration: 1000,
        onStart: function(request) {
            if (this.wrapper.offsetHeight == 0) {
                closeOpen(slidez);
            }
        },
        onComplete: function(request) {
            if (this.wrapper.offsetHeight > 0) {
                new Fx.Scroll(window).toElement($('toggle_content'));
            }
        }
    });

    $('toggle_content').addEvent('click', function(e) {
        e = new Event(e);
        slidez.toggle();
        e.stop();
    });
    slidez.hide();
}); 

我尝试将它转换为 jQuery 代码,但有时它会失败,我浪费了时间,我需要这里的帮助...

提前致谢!

I was wondering there type of API like onStart and onComplete from Mootools, it makes me curious where i get those APIs for jQuery... there an example script:

var slidez = null;
function closeOpen(ref) {
    //return
    if (ref != slidez && slidez.wrapper.offsetHeight > 0) {
        slidez.slideOut();
    }
}

window.addEvent('domready', function() {
    slidez = new Fx.Slide('hello_content', {
        duration: 1000,
        onStart: function(request) {
            if (this.wrapper.offsetHeight == 0) {
                closeOpen(slidez);
            }
        },
        onComplete: function(request) {
            if (this.wrapper.offsetHeight > 0) {
                new Fx.Scroll(window).toElement($('toggle_content'));
            }
        }
    });

    $('toggle_content').addEvent('click', function(e) {
        e = new Event(e);
        slidez.toggle();
        e.stop();
    });
    slidez.hide();
}); 

I tried to convert it to jQuery code, but sometimes it failed and i wasted of my time, i needed a help here...

Thanks in advance!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

娇女薄笑 2024-12-17 13:03:20

jQuery 动画并不像 mootools 中那样创建为对象,而只是在元素上调用的方法。没有 onstart 事件 - 您只需在调用动画方法之前调用任何 onstart 代码即可。 oncomplete 的 jquery 等价物是动画方法的回调参数。动画完成时调用回调。

$(function() {
    $("#toggle_content").click(function (e) {
        var toggle_content = this;
        $("#hello_content").slideToggle(1000, function () {
            if ($(this).height() > 0) {
                toggleContent.scrollIntoView();
            }
        });
    });
    $("#hello_content").hide();
});

jQuery animations are not created as objects as in mootools, but rather are just methods called on elements. There is no onstart event - you would just call any onstart code before you call the animation method. The jquery equivelant of oncomplete is the callback argument to the animation method. The callback is called when the animation is complete.

$(function() {
    $("#toggle_content").click(function (e) {
        var toggle_content = this;
        $("#hello_content").slideToggle(1000, function () {
            if ($(this).height() > 0) {
                toggleContent.scrollIntoView();
            }
        });
    });
    $("#hello_content").hide();
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文