Это не гладко, потому что у вас есть приращение прокрутки на 50 каждые 100 миллисекунд.
измените это значение и количество, на которое вы прокручиваете, на меньшее число, чтобы запустить функцию с иллюзией большогобольше «плавности».
уменьшите значение скорости, чтобы сделать это быстрее или медленнее.
function pageScroll() {
window.scrollBy(0,1);
scrolldelay = setTimeout(pageScroll,10);
}
покажется намного плавнее, попробуйте;)