Skip to content

Commit 40729e8

Browse files
committed
Update the "self.js_click()" method
1 parent 202b031 commit 40729e8

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

seleniumbase/fixtures/base_case.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2487,6 +2487,7 @@ def js_click(self, selector, by=By.CSS_SELECTOR, all_matches=False):
24872487
""" Clicks an element using JavaScript.
24882488
Can be used to click hidden / invisible elements.
24892489
If "all_matches" is False, only the first match is clicked. """
2490+
self.wait_for_ready_state_complete()
24902491
selector, by = self.__recalculate_selector(selector, by, xp_ok=False)
24912492
if by == By.LINK_TEXT:
24922493
message = (
@@ -2502,7 +2503,12 @@ def js_click(self, selector, by=By.CSS_SELECTOR, all_matches=False):
25022503
if self.is_element_visible(selector, by=by):
25032504
self.__demo_mode_highlight_if_active(selector, by)
25042505
if not self.demo_mode and not self.slow_mode:
2505-
self.__scroll_to_element(element, selector, by)
2506+
success = js_utils.scroll_to_element(self.driver, element)
2507+
if not success:
2508+
self.wait_for_ready_state_complete()
2509+
timeout = settings.SMALL_TIMEOUT
2510+
element = page_actions.wait_for_element_present(
2511+
self.driver, selector, by, timeout=timeout)
25062512
css_selector = self.convert_to_css_selector(selector, by=by)
25072513
css_selector = re.escape(css_selector) # Add "\\" to special chars
25082514
css_selector = self.__escape_quotes_if_needed(css_selector)

0 commit comments

Comments
 (0)