Object
Creates a new Element
@api private
# File lib/selenium/webdriver/common/element.rb, line 12 def initialize(bridge, id) @bridge, @id = bridge, id end
# File lib/selenium/webdriver/common/element.rb, line 20 def ==(other) other.kind_of?(self.class) && bridge.elementEquals(self, other) end
For Rails 3 - jonathanjulian.com/2010/04/rails-to_json-or-as_json/
@api private
# File lib/selenium/webdriver/common/element.rb, line 236 def as_json(opts = nil) { :ELEMENT => @id } end
Get the value of a the given attribute of the element. Will return the current value, even if this has been modified after the page has been loaded. More exactly, this method will return the value of the given attribute, unless that attribute is not present, in which case the value of the property with the same name is returned. If neither value is set, nil is returned. The “style” attribute is converted as best can be to a text representation with a trailing semi-colon. The following are deemed to be “boolean” attributes, and will return either “true” or “false”:
async, autofocus, autoplay, checked, compact, complete, controls, declare, defaultchecked, defaultselected, defer, disabled, draggable, ended, formnovalidate, hidden, indeterminate, iscontenteditable, ismap, itemscope, loop, multiple, muted, nohref, noresize, noshade, novalidate, nowrap, open, paused, pubdate, readonly, required, reversed, scoped, seamless, seeking, selected, spellcheck, truespeed, willvalidate
Finally, the following commonly mis-capitalized attribute/property names are evaluated as expected:
class, readonly
@param [String]
attribute name
@return [String,nil]
attribute value
# File lib/selenium/webdriver/common/element.rb, line 73 def attribute(name) bridge.getElementAttribute @id, name end
Clear this element
# File lib/selenium/webdriver/common/element.rb, line 110 def clear bridge.clearElement @id end
Click the element
# File lib/selenium/webdriver/common/element.rb, line 33 def click bridge.clickElement @id end
Is the element displayed?
@return [Boolean]
# File lib/selenium/webdriver/common/element.rb, line 140 def displayed? bridge.isElementDisplayed @id end
Is the element enabled?
@return [Boolean]
# File lib/selenium/webdriver/common/element.rb, line 120 def enabled? bridge.isElementEnabled @id end
# File lib/selenium/webdriver/common/element.rb, line 25 def hash @id.hash ^ @bridge.hash end
# File lib/selenium/webdriver/common/element.rb, line 16 def inspect '#<%s:0x%x id=%s>' % [self.class, hash*2, @id.inspect] end
Get the location of this element.
@return [WebDriver::Point]
# File lib/selenium/webdriver/common/element.rb, line 166 def location bridge.getElementLocation @id end
Determine an element’s location on the screen once it has been scrolled into view.
@return [WebDriver::Point]
# File lib/selenium/webdriver/common/element.rb, line 176 def location_once_scrolled_into_view bridge.getElementLocationOnceScrolledIntoView @id end
for SearchContext and execute_script
@api private
# File lib/selenium/webdriver/common/element.rb, line 215 def ref @id end
Is the element selected?
@return [Boolean]
# File lib/selenium/webdriver/common/element.rb, line 130 def selected? bridge.isElementSelected @id end
Send keystrokes to this element
@param [String, Symbol, Array]
Examples:
element.send_keys "foo" #=> value: 'foo' element.send_keys "tet", :arrow_left, "s" #=> value: 'test' element.send_keys [:control, 'a'], :space #=> value: ' '
@see Keys::KEYS
# File lib/selenium/webdriver/common/element.rb, line 101 def send_keys(*args) bridge.sendKeysToElement @id, Keys.encode(args) end
Get the size of this element
@return [WebDriver::Dimension]
# File lib/selenium/webdriver/common/element.rb, line 186 def size bridge.getElementSize @id end
Get the value of the given CSS property
# File lib/selenium/webdriver/common/element.rb, line 156 def style(prop) bridge.getElementValueOfCssProperty @id, prop end
Submit this element
# File lib/selenium/webdriver/common/element.rb, line 148 def submit bridge.submitElement @id end
Get the tag name of this element
@return [String]
# File lib/selenium/webdriver/common/element.rb, line 43 def tag_name bridge.getElementTagName @id end
Get the text content of this element
@return [String]
# File lib/selenium/webdriver/common/element.rb, line 83 def text bridge.getElementText @id end
Convert to a WebElement JSON Object for transmission over the wire. @see code.google.com/p/selenium/wiki/JsonWireProtocol#Basic_Concepts_And_Terms
@api private
# File lib/selenium/webdriver/common/element.rb, line 226 def to_json(*args) as_json.to_json(*args) end
Generated with the Darkfish Rdoc Generator 2.