const webdriver=require('selenium-webdriver'); // selenium webdriver
const chromedriver=require('chromedriver'); // chrome driver
const by=webdriver.By;
const untill=webdriver.until;
const driver=new webdriver.Builder().forBrowser('chrome').build();
driver.get('https://www.example.com/sell-my-cell-phone/sell-my-samsung/');
driver.findElements(by.className('LaptopBox')).then((rst)=>{
rst.forEach((el)=>{
driver.wait(untill.elementsLocated(by.tagName('a')))
let btn=el.findElement(by.tagName('a'));
btn.click();
console.log("abc")
});
});
i'm trying this code. but it gave me this error after printing console log.
UnhandledPromiseRejectionWarning: StaleElementReferenceError: stale element reference: element is not attached to the page document
in my html like following.
<ul id="LaptopBox">
<li class="sliding-element">
<a href="#">anchor one</a>
</li>
<li class="sliding-element">
<a href="#">anchor two</a>
</li>
<li class="sliding-element">
<a href="#">anchor three</a>
</li>
</ul>