class Watir::Browser::Scroll

Public Class Methods

new(browser) click to toggle source
# File lib/browser_scroll/browser/scroll.rb, line 4
def initialize(browser)
  @browser = browser
end

Public Instance Methods

bottom() click to toggle source
# File lib/browser_scroll/browser/scroll.rb, line 27
def bottom
  execute('window.scrollTo(0, document.body.scrollHeight);')
  self
end
by(left, top) click to toggle source
# File lib/browser_scroll/browser/scroll.rb, line 39
def by(left, top)
  execute(
    'window.scrollBy(arguments[0], arguments[1]);',
    Integer(left), Integer(top)
  )
  self
end
middle() click to toggle source
# File lib/browser_scroll/browser/scroll.rb, line 32
def middle
  execute(
    'window.scrollTo(window.outerWidth / 2, window.outerHeight / 2);'
  )
  self
end
to(param = nil) click to toggle source
# File lib/browser_scroll/browser/scroll.rb, line 8
def to(param = nil)
  if !param.nil? && param.is_a?(Array)
    unless param.is_a?(Array)
      raise ArgumentError, "Unable to scroll to: #{param}."
    end

    execute(
      'window.scrollTo(arguments[0], arguments[1]);',
      Integer(param[0]), Integer(param[1])
    )
  end
  self
end
top() click to toggle source
# File lib/browser_scroll/browser/scroll.rb, line 22
def top
  execute('window.scrollTo(0, 0);')
  self
end

Private Instance Methods

execute(*args) click to toggle source
# File lib/browser_scroll/browser/scroll.rb, line 49
def execute(*args)
  @browser.execute_script(*args)
end