Class: Watir::Element::Scroll
- Inherits:
-
Object
- Object
- Watir::Element::Scroll
- Defined in:
- lib/browser_scroll/element/scroll.rb
Instance Method Summary collapse
- #bottom ⇒ Object
- #by(left, top) ⇒ Object
-
#initialize(element) ⇒ Scroll
constructor
A new instance of Scroll.
- #middle ⇒ Object
- #scroll_to ⇒ Object
- #to ⇒ Object
- #top ⇒ Object
Constructor Details
#initialize(element) ⇒ Scroll
Returns a new instance of Scroll.
4 5 6 |
# File 'lib/browser_scroll/element/scroll.rb', line 4 def initialize(element) @element = element end |
Instance Method Details
#bottom ⇒ Object
21 22 23 24 |
# File 'lib/browser_scroll/element/scroll.rb', line 21 def bottom execute('arguments[0].scrollIntoView(false);', @element) self end |
#by(left, top) ⇒ Object
38 39 40 41 42 43 44 |
# File 'lib/browser_scroll/element/scroll.rb', line 38 def by(left, top) execute( 'window.scrollBy(arguments[0], arguments[1]);', Integer(left), Integer(top) ) self end |
#middle ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/browser_scroll/element/scroll.rb', line 26 def middle script = <<-JS var bodyRect = document.body.getBoundingClientRect(); var elementRect = arguments[0].getBoundingClientRect(); var left = (elementRect.left - bodyRect.left) - (window.innerWidth / 2); var top = (elementRect.top - bodyRect.top) - (window.innerHeight / 2); window.scrollTo(left, top); JS execute(script, @element) self end |
#scroll_to ⇒ Object
12 13 14 |
# File 'lib/browser_scroll/element/scroll.rb', line 12 def scroll_to top end |
#to ⇒ Object
8 9 10 |
# File 'lib/browser_scroll/element/scroll.rb', line 8 def to self end |
#top ⇒ Object
16 17 18 19 |
# File 'lib/browser_scroll/element/scroll.rb', line 16 def top execute('arguments[0].scrollIntoView();', @element) self end |