G-J
G-J

Reputation: 1068

.body.scrollHeight doesn't work in Firefox

.body.scrollHeight does not work in Firefox.

See: http://jsfiddle.net/gjrowe/X63KR/

What is the correct syntax to use instead?

Upvotes: 11

Views: 12658

Answers (2)

Ankit Gupta
Ankit Gupta

Reputation: 786

Use below code:

JavascriptExecutor jse = (JavascriptExecutor) (WebDriverObject);
jse.executeScript("window.scrollBy(0,document.body.scrollHeight || document.documentElement.scrollHeight)", "");

Upvotes: 1

G-J
G-J

Reputation: 1068

This question has the same root problem as the thread at... Dynamically define iframe height based on window size (NOT CONTENT)

Understanding the issue at that thread will give the solution to this.

Basically, instead of using .body.scrollHeight, add this code...

function getDocHeight() {
    var D = document;
    return Math.max(
        Math.max(D.body.scrollHeight, D.documentElement.scrollHeight),
        Math.max(D.body.offsetHeight, D.documentElement.offsetHeight),
        Math.max(D.body.clientHeight, D.documentElement.clientHeight)
    );
}

The answer was obtained from: http://james.padolsey.com/javascript/get-document-height-cross-browser/

Upvotes: 21

Related Questions