javascript error: arguments[0].scrollIntoView is not a function using selenium on python
Please use the line of code mentioned below instead of the one you are using:
driver.execute_script("arguments[0].scrollIntoView();", element)
Updated answer:
You can also use location_once_scrolled_into_view
it gives the coordinates of the element but it does scrolls the element into view as well. You can use it like:
element = driver.find_elements_by_class_name('dg-button')element.location_once_scrolled_into_view
scrollIntoView()
is part of the DOM API and you need to run it on an WebElement but not on a List of WebElement(s).
You need to change find_element(s)
to find_element
:
element = driver.find_element_by_class_name('dg-button')driver.execute_script("return arguments[0].scrollIntoView();", element)
If you need to use it on a List of elements, than you can override it with Python, so you can navigate to the element that you want
e.g. first element of a List
element = driver.find_elements_by_class_name('dg-button')driver.execute_script("return arguments[0].scrollIntoView();", element[0])
e.g. last element of a List
element = driver.find_elements_by_class_name('dg-button')driver.execute_script("return arguments[0].scrollIntoView();", element[-1])
Hope that it helps :)