Optimize IE node disabled?
This commit is contained in:
parent
249ef3f722
commit
f8bfa9cd32
|
@ -4,8 +4,19 @@ require 'capybara/selenium/extensions/html5_drag'
|
||||||
|
|
||||||
class Capybara::Selenium::IENode < Capybara::Selenium::Node
|
class Capybara::Selenium::IENode < Capybara::Selenium::Node
|
||||||
def disabled?
|
def disabled?
|
||||||
# TODO: Doesn't work for a bunch of cases - need to get IE running to see if it can be done like this
|
# super
|
||||||
# driver.evaluate_script("arguments[0].msMatchesSelector(':disabled, select:disabled *')", self)
|
# optimize to one script call
|
||||||
super
|
driver.evaluate_script <<~JS.delete("\n"), self
|
||||||
|
arguments[0].msMatchesSelector('
|
||||||
|
:disabled,
|
||||||
|
select:disabled *,
|
||||||
|
optgroup:disabled *,
|
||||||
|
fieldset[disabled],
|
||||||
|
fieldset[disabled] > *:not(legend),
|
||||||
|
fieldset[disabled] > *:not(legend) *,
|
||||||
|
fieldset[disabled] > legend:nth-of-type(n+2),
|
||||||
|
fieldset[disabled] > legend:nth-of-type(n+2) *
|
||||||
|
')
|
||||||
|
JS
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue