添加侦听器以在宽度< X

时间:2013-04-03 19:48:17

标签: javascript jquery

我设置此css样式,以便在屏幕宽度小于1024px时删除#sidebox上的侧边栏行为。它也被替换为原始位置,它在内容中充当普通div,因此:'position:relative'。

@media screen and (max-width: 1024px) {
    #sidebox {
        position: relative;
        top: 0;
        right: 0;
    }
}

下一步(这是我需要帮助的)是删除使#sidebox在低于某个高度时滚动到顶部的JQuery脚本,但仍然让当屏幕大于1024px时,它会表现得那样。

因此,当在1024px #sidebox上调整屏幕大小时,应滚动到顶部。这种行为称为“跟随”。

下面是我为完成上述内容而设置的JQuery脚本:

if ($(window).width() > 1024) {
    $(window).scroll(function () {
        $("#sidebox").css("top", Math.max(0, 120 - $(this).scrollTop()));
    });
}

$(window).resize(function() {
    if ($(window).width() > 1024) {
        $("#sidebox").css("top", Math.max(0, 120 - $(this).scrollTop()));
    } else {
        $("#sidebox").css("top"), 0;
    }
});

那我该怎么帮你问?好吧,正如你可能已经猜到的那样,这种行为是有缺陷的。
#sidebox (在css中) <div id="sidebox">...</div> (在html中)只有在网站刷新时才会发挥作用。

$(window).resize似乎没有作为调整大小的监听器。

因此,当我的窗口宽度为1920px并且我打开网站时,侧边栏将按照需要运行,但是当我将窗口调整到低于1024px的宽度时,由于上面看到的CSS,它将会到达正确的位置,但仍然尝试滚动,因为$(window).resize不能按照我的意愿运作。

0 个答案:

没有答案