我一直在尝试使用下面的代码在页面加载时触发点击事件
window.onload = function () {
var click = document.querySelector('li[data-filter=".architecture"]');
if(click) {
click.click()
}
}
在 chrome 中,上面的代码工作得很好,尽管在 microsoft Edge 中,click() 方法由于某种原因似乎不起作用。 执行 console.log 它会在我尝试过的所有浏览器(包括 Microsoft Edge)中显示该元素,并且它们不会显示任何错误。
Microsoft Edge 版本:124.0.2478.67(官方版本)(64 位)
onload` 事件会等待整个页面(包括其样式表、图像、子框架和其他资源)在执行 JavaScript 代码之前完全加载,这可能会导致出现一些问题,例如您提到的问题。延迟也可能是一个因素
您可能想尝试更现代的方法,例如
DOMContentLoaded
这是对您的代码的修订,可能对您有用:
document.addEventListener('DOMContentLoaded', function () {
var click = document.querySelector('li[data-filter=".architecture"]');
if (click) {
click.click();
}
});