如何在加载JavaScript时设置初始CSS值?

如何在加载JavaScript时设置初始CSS值?,javascript,jquery,Javascript,Jquery,我对JavaScript非常陌生,我仍在努力学习很多东西。我发现了一个允许在滚动条上显示水平视差的片段。我正在使用以下代码设置“right”css属性: var $horizontal = $('.scroll'); $(window).scroll(function () { var s = $(this).scrollTop(), d = $(document).height(), c = $(this).height(); scr

我对JavaScript非常陌生,我仍在努力学习很多东西。我发现了一个允许在滚动条上显示水平视差的片段。我正在使用以下代码设置“right”css属性:

var $horizontal = $('.scroll');

    $(window).scroll(function () {
    var s = $(this).scrollTop(),
        d = $(document).height(),
        c = $(this).height();

    scrollPercent = (s / (d - c));

    var position = (scrollPercent * 2500) + ($(document).width() / 2);

    $horizontal.css({
        'right': position
    });
});

但是,一旦滚动发生,“right”属性在加载时默认设置为0,则效果非常好。它只在我开始滚动时捕捉到我的位置变量。如何在加载时调用此变量并使用scroll对其进行修改?

只要在窗口加载完成后调用scroll函数即可:

$(window).scroll(function () {
    ...
});

$( window ).load(function() {
   $(window).trigger('scroll');
});

使代码成为真正的函数。从初始加载(例如DOM ready事件)和滚动中调用它。设置初始CSS值的最佳方法是使用样式表。Teemu-我很欣赏,但该值是基于文档宽度的动态数字,因此在CSS中没有真正的初始值可以设置。这很有效。我还在努力理解它背后的数学原理。。。var s是用户滚动的像素数(对吗?)。d是从上到下滚动(右?)时,整个网站的像素数。什么是c?我猜JavaScript的目标是div的高度。是吗?正确,除了c是窗口的高度在本例中,基本上是文档的可见高度。顺便说一句,div使用JavaScript填充窗口的整个高度,所以我在技术上是正确的,但原因是错误的。谢谢你的帮助!