jquery - 切换布局页面跳转(脚本改进)

标签 jquery page-jump

我正在使用此脚本来切换页面中的布局:

$("span.switcher").click(function () {
    $("span.switcher").toggleClass("swap"); /*!*/
    $("ol.search-results").fadeOut("fast", function() {
        $(this).fadeIn("fast").toggleClass("grid");
});

脚本工作正常,我遇到的问题是,如果切换 View 在页面下方,布局会发生变化,然后页面会跳回来。

如果我在您看到/* 的地方添加“return false”! */在第二行中,脚本不起作用。

此外,正如您所看到的,我使用 而不是 ,因为我被告知使用 之外的其他元素会阻止页面跳转。

知道如何解决页面跳转问题吗?

谢谢。

最佳答案

this博客文章提到,页面向上滚动是因为

fadeOut sets the css property display to none.

博客中也给出了解决方案,即使用 fadeTo() 而不是 fadeOut()fadeIn(),像这样:

$("span.switcher").click(
    function () {
        $("span.switcher").toggleClass("swap");
        $("ol.search-results").fadeTo("fast", 0,
            function () {
                $(this).fadeTo("fast", 1).toggleClass("grid");
            }
        );
    }
);


<小时/> 关于使用 a 元素而不是 span,您可以采取多种措施来防止链接的默认行为(如果链接的默认行为是跳转到页面顶部) href 属性为 "#")。 this 中讨论了如何做到这一点及其效果。所以问题。

关于jquery - 切换布局页面跳转(脚本改进),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2869491/

相关文章:

javascript - 双下拉框去页面跳转

javascript - jQuery 页面在执行动画之前跳转到顶部

jquery - 在 jQuery UI 对话框的 beforeClose 上延迟关闭事件

jquery - 如何使用 jquery 为 10 个连续元素设置动画

jquery - 如何在不重新加载页面的情况下设置哈希值?

css - Wordpress:跳转链接没有跳转到正确的位置

vim - 保存后 Vim 中的光标跳转

javascript - div 定位固定在 margin-top :20px when scrolling up

Javascript:如何让 function2 仅在 function1 完全完成后才执行?

ruby-on-rails - 如何在 Ruby on Rails 中创建一个 anchor 并重定向到这个特定的 anchor