如何使用普通 javascript 刺激 click()
How to stimulate a click() using plain javascript
我有一个非常基本的代码:
if(screen.width > 600) {
document.querySelector('.toggle-sidenav').click();
}
一旦屏幕 > 600px,我想单击具有 toggle-sidenav
的 class 但 [=30= 中的 .click()
方法的 div ] 不工作。
我不想使用 jQuery。
我怎样才能做到这一点?
您可以使用 dispatchEvent。该示例在此处显示调整屏幕大小,该函数获取传递给另一个函数的宽度,然后 dispatchEvent.. 这里该函数使用 clientWidth 来显示工作但在您的代码中您可以使用任何其他键
const sideNav = document.querySelector('.toggle-sidenav');
sideNav.addEventListener('click', () => {
alert('Click Triggered')
})
window.addEventListener('resize', (e) => {
const width = document.body.clientWidth;
triggerClick(width)
})
function triggerClick(width) {
if (width > 600) {
console.log(width)
sideNav.dispatchEvent(new Event('click'))
}
}
<div class='toggle-sidenav'>
Test
</div>
我有一个非常基本的代码:
if(screen.width > 600) {
document.querySelector('.toggle-sidenav').click();
}
一旦屏幕 > 600px,我想单击具有 toggle-sidenav
的 class 但 [=30= 中的 .click()
方法的 div ] 不工作。
我不想使用 jQuery。
我怎样才能做到这一点?
您可以使用 dispatchEvent。该示例在此处显示调整屏幕大小,该函数获取传递给另一个函数的宽度,然后 dispatchEvent.. 这里该函数使用 clientWidth 来显示工作但在您的代码中您可以使用任何其他键
const sideNav = document.querySelector('.toggle-sidenav');
sideNav.addEventListener('click', () => {
alert('Click Triggered')
})
window.addEventListener('resize', (e) => {
const width = document.body.clientWidth;
triggerClick(width)
})
function triggerClick(width) {
if (width > 600) {
console.log(width)
sideNav.dispatchEvent(new Event('click'))
}
}
<div class='toggle-sidenav'>
Test
</div>