0

jQuery を使用して、現在スクロールされているページの量を計算し、ページがスクロールされるたびにその値を入力に書き込みます。

var scrollAmount = $(window).scrollTop();
var documentHeight = $(document).height();
var scrollPercent = (scrollAmount / documentHeight) * 100;

$(window).scroll(function (event) {
 $(".box").val(scrollPercent);
});​

フィドル: http://jsfiddle.net/x3jXK/

それでも、これを試すと、入力は常にゼロを示します。

.attr()表示される値が変化しないため、代わりに使用することについて何か読んだことを覚えてい.val()ますが、1秒から1秒だけでなく動的に変化するため、ここでそれを実装する方法がわかりません。

4

1 に答える 1

1

変数は関数内にある必要があるため、スクロールごとに計算できます。

$(window).scroll(function(event) {
    var scrollAmount = $(window).scrollTop();
    var documentHeight = $(document).height();
    var scrollPercent = (scrollAmount / documentHeight) * 100;

    $(".knob").val(scrollPercent);
});

ここでテストしてください: http://jsfiddle.net/RASG/x3jXK/1/

于 2012-10-16T21:00:54.347 に答える