位置为:在垂直滚动时固定但在位置:相对为水平滚动时的div?

时间:2019-01-12 21:21:56

标签: javascript jquery html css fixed

我正在尝试将div元素放置在我的网站的顶部,该元素在垂直滚动时具有固定位置,而在水平滚动时具有相对位置。我不相信仅凭CSS就能实现(可能吗?)。我假设我必须使用一些Javascript(JQuery)来迫使此div停留在屏幕顶部,同时在水平滚动时仍具有相对位置。

我尝试使用CSS将固定div放置在相对div内以及位置的许多变化中,但没有成功。我还尝试检测用户何时滚动,然后在div仍然是相对的但将div强制到页面顶部时,但是无法正常使用该功能。该功能需要在水平滚动时保持位置,而在垂直滚动时保持固定在屏幕顶部。

我有一个fiddle示例,它显示了我正在使用的示例,并且在垂直滚动时可以得到想要的结果。但是,当水平滚动时,页面顶部的位置将变得无用。如果您删除了“固定” css类,则可以看到水平滚动的工作方式以及页面顶部的位置如何保持相对。

/** JQuery Scroll Attempt **/
$( document ).ready(function() {
    console.log( "ready!" );
    $(window).scroll(function () {
        console.log('scrolling..');
        $(".rel").css( {top: -$('.rel').scrollTop() });
    });
});

更新(已解决):

好,我知道了,这个JQuery代码段对我有用,我也会更新小提琴。

// JQuery
$( document ).ready(function() {
    $(window).scroll(function () {
        var currPos = $(document).scrollLeft();
        $('.fixed').css('left', -currPos + 5 );
    });
});

0 个答案:

没有答案