# Katalon Recorder Unable to Scroll Down Via Sendkeys or Javascript

**URL:** <https://forum.katalon.com/t/katalon-recorder-unable-to-scroll-down-via-sendkeys-or-javascript/51019>\
**Category:** Bug Report\
**Tags:** katalon-recorder\
**Created:** [January 13, 2021, 11:28am UTC](https://forum.katalon.com/t/katalon-recorder-unable-to-scroll-down-via-sendkeys-or-javascript/51019 "2021-01-13T11:28:49Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![venustechnology](https://avatars.discourse-cdn.com/v4/letter/v/da6949/32.png) [@venustechnology](https://forum.katalon.com/u/venustechnology)\
**Post date:** [January 13, 2021, 11:28am UTC](https://forum.katalon.com/t/katalon-recorder-unable-to-scroll-down-via-sendkeys-or-javascript/51019/1 "2021-01-13T11:28:49Z")

</div>

I’ve seen the strangest thing with Katalon Recorder, which has to be a bug.

I’m trying to use sendkeys to send a pagedown key if it verifies the element isn’t visible. This worked one time, and then it has never worked again ever, no matter what I do.

I’ve even started a new project, and just tried to send the key page down to chrome, but it doesn’t work. I’ve seen a few people complain about sendkey’s not working with recorder and there doesn’t seem to be a solution.

Is there any way to scroll down on command via javascript? All the solutions I’ve tried don’t work, no matter what I do, katalon recorder will not scroll a chrome window in any direction.

I also read in these forums that locator was no longer necessary when using sendkey but if i leave the locator blank it will “wait for element to be found” and then timeout and stop the script.

---

<div class="post-metadata">

**Author:** ![kane1](https://avatars.discourse-cdn.com/v4/letter/k/eb8c5e/32.png) [@kane1](https://forum.katalon.com/u/kane1)\
**Post date:** [April 3, 2026, 2:55am UTC](https://forum.katalon.com/t/katalon-recorder-unable-to-scroll-down-via-sendkeys-or-javascript/51019/2 "2026-04-03T02:55:34Z")

</div>

still an issue in 2026

---

<div class="post-metadata">

**Author:** ![arvind.choudhary](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/arvind.choudhary/32/33165_2.png) [@arvind.choudhary](https://forum.katalon.com/u/arvind.choudhary)\
**Post date:** [April 3, 2026, 5:08am UTC](https://forum.katalon.com/t/katalon-recorder-unable-to-scroll-down-via-sendkeys-or-javascript/51019/3 "2026-04-03T05:08:22Z")

</div>

**This is NOT a bug. It Katalon recoder behaviour or you can even say limitation**

Katalon Recorder **cannot scroll the browser viewport** using `sendKeys` or JavaScript due to browser-extension limitations.

- `sendKeys(PAGE_DOWN)` only works on focused input elements

- Locator cannot be empty — Recorder still waits for it

- `scrollToElement` is **not supported** in Recorder

\*\*If scroll logic is required, Katalon Studio must be used Via Scroll to element  
\*\*  
So –\> Recorder runs as a browser extension and cannot control browser scrolling via sendKeys or JavaScript. PAGE\_DOWN only works on focused input elements, and locator cannot be empty. `scrollToElement` is available **only in Katalon Studio** , not Recorder.

---

<div class="post-metadata">

**Author:** ![depapp](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/depapp/32/29178_2.png) [@depapp](https://forum.katalon.com/u/depapp)\
**Post date:** [April 5, 2026, 1:42am UTC](https://forum.katalon.com/t/katalon-recorder-unable-to-scroll-down-via-sendkeys-or-javascript/51019/4 "2026-04-05T01:42:15Z")

</div>

hi @venustechnology

**Why your scroll doesn’t work (Recorder):**

- Katalon Recorder runs as a browser extension → limited control over viewport
- `sendKeys(PAGE_DOWN)` only works if an **input element is focused**
- JS like `window.scrollTo()` is blocked / unreliable in Recorder
- Empty locator = Recorder waits → timeout (expected behavior)

**What actually works:**

👉 **Option 1 (best): switch to Katalon Studio**

- Use:

```groovy
WebUI.scrollToElement(findTestObject('your_object'), 10)

```

👉 **Option 2 (if stuck with Recorder):**

- Click something focusable first (input/textbox), then:

```auto
sendKeys | css=input | ${KEY_PAGE_DOWN}

```

- But this is flaky and not recommended

👉 **Option 3 (hacky workaround):**

- Use `click` on elements further down instead of scrolling

* * *

**Real talk:**  
If your test depends on scrolling → **Recorder is the wrong tool**. Move to Studio. That’s the proper fix
