我想在点击时加载链接,但不加载。我使用User_temp_Table'
来加载动画和preventDefault()
。我还应该使用什么?
我尝试setTimeout()
,并考虑将节点的路径链接保存在变量中,然后使用return true
进行调用。但是我不知道该怎么做。
location.href
答案 0 :(得分:2)
preventDefault恰如其名。它可以防止事件的默认行为。
对于链接,默认行为是将用户重定向到关联的href
属性值。
您正在阻止这种情况的发生。因此,它永远不会发生。 setTimeout
并没有做任何事情。
如果要在动画之后重定向用户,则需要明确地进行操作:
links.forEach((link)=>{
link.addEventListener('click', (e)=>{
e.preventDefault();
let content = document.querySelector('.content');
content.classList.remove('fadeInDown');
content.classList.remove('animated');
content.classList.add('fadeOutUp');
content.classList.add('animated');
setTimeout(() => {
window.location.href = e.target.href;
}, 500);
});
答案 1 :(得分:0)
setTimeout()
要求将回调函数作为其第一个参数,但您只需要花费时间。会是
setTimeout(() => {
window.location.href = e.target.href
}, 500)