Class: Gridium::ElementExtensions

Inherits:
Object
  • Object
show all
Defined in:
lib/element_extensions.rb

Class Method Summary collapse

Class Method Details

.highlight(element) ⇒ Object



4
5
6
7
8
9
10
11
12
13
# File 'lib/element_extensions.rb', line 4

def self.highlight(element)
  Log.debug("Highlighting element...")
  original_border = Driver.execute_script("return arguments[0].style.border", element.element)
  original_background = Driver.execute_script("return arguments[0].style.backgroundColor", element.element)
  Driver.execute_script("arguments[0].style.border='3px solid lime'; return;", element.element)
  Driver.execute_script("arguments[0].style.backgroundColor='lime'; return;", element.element)
  sleep (Gridium.config.highlight_duration)
  Driver.execute_script("arguments[0].style.border='" + original_border + "'; return;", element.element)
  Driver.execute_script("arguments[0].style.backgroundColor='" + original_background + "'; return;", element.element)
end

.hover_away(element) ⇒ Object



26
27
28
29
# File 'lib/element_extensions.rb', line 26

def self.hover_away(element)
  Driver.execute_script("var evObj = document.createEvent('MouseEvents'); evObj.initMouseEvent(\"mouseout\",true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null); arguments[0].dispatchEvent(evObj);", element.element)
  sleep 1
end

.hover_over(element) ⇒ Object



21
22
23
24
# File 'lib/element_extensions.rb', line 21

def self.hover_over(element)
  Driver.execute_script("var evObj = document.createEvent('MouseEvents'); evObj.initMouseEvent(\"mouseover\",true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null); arguments[0].dispatchEvent(evObj);", element.element)
  sleep 2
end

.mouse_over(element) ⇒ Object



31
32
33
# File 'lib/element_extensions.rb', line 31

def self.mouse_over(element)
  Driver.driver.mouse.move_to(element.element)
end

.scroll_to(element) ⇒ Object



15
16
17
18
19
# File 'lib/element_extensions.rb', line 15

def self.scroll_to(element)
  Log.debug("Scrolling element into view...")
  Driver.execute_script("arguments[0].scrollIntoView(); return;", element.element)
  sleep 1
end

.trigger_onblur(element) ⇒ Object



35
36
37
# File 'lib/element_extensions.rb', line 35

def self.trigger_onblur(element)
  Driver.execute_script("arguments[0].focus(); arguments[0].blur(); return true", element.element)
end