gpt4 book ai didi

javascript - onclick:改变位置后做一些事情

转载 作者:太空宇宙 更新时间:2023-11-04 03:11:25 24 4
gpt4 key购买 nike

假设我想执行以下操作:单击“div”时,更改到另一个位置(好像它是...)然后执行某项操作。我试过这段代码:

<div onclick="location.reload();location.href='...';togglebox('#ident')">Title</div>

哪里ident是新位置中对象的标识符 href='...'togglebox是脚本中定义的函数。但似乎浏览器试图完成 togglebox('#ident')在更改位置之前,所以输出不是预期的。例如,如果我尝试

<div onclick="location.reload();location.href='...';console.log(5)">Title</div>

然后是 5在更改位置之前立即出现,而我希望浏览器首先更改位置然后显示 5 .

这个反单的方案有什么解决办法吗?

欢迎提出建议

最佳答案

一种方法是使用查询字符串来告诉目标页面要做什么。然而,如果你想要一个几乎完全按照你的要求做的 hack,你可以这样做:

(这会进入您当前页面的点击事件处理程序)

window.location.href = '...'; // Go to another page in your site
localStorage.setItem('exec',"yourCodeInQuotes()");

现在,目标页面应该准备好处理您从 localStorage 中提到的 ident,或者直接评估代码。无论哪种方式,您都需要目标页面来预测即将到来的数据。

(这进入目标页面)

var message = localStorage.getItem('exec'); // Will get whatever you stored
eval(message); // Will attempt to run it as JavaScript
$('#'+message); // Or find it if it was your ident and do stuff...

关于javascript - onclick:改变位置后做一些事情,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29459143/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com