我正在尝试在单击浏览器后退按钮时运行一些代码。
如何在不更改浏览器历史记录的情况下找到浏览器的后退按钮?
我尝试了下面的代码。
我在 else
block 中遇到异常:“事件未定义”。
window.onunload = HandleBackFunctionality();
function HandleBackFunctionality()
{
if(window.event)
{
if(window.event.clientX < 40 && window.event.clientY < 0)
{
alert("Browser back button is clicked…");
} else {
alert("Browser refresh button is clicked…");
}
} else {
if(event.currentTarget.performance.navigation.type == 1)
{
alert("Browser refresh button is clicked…");
}
if(event.currentTarget.performance.navigation.type == 2)
{
alert("Browser back button is clicked…");
}
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
最佳答案
使用
$(window).on("navigate", function (event, data) {
var direction = data.state.direction;
if (direction == 'back') {
// do something
}
if (direction == 'forward') {
// do something else
}
});
关于javascript - 单击浏览器后退按钮时触发事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26881550/