当前位置:首页 > JavaScript

js实现页面返回

2026-02-03 08:45:36JavaScript

使用 history.back() 方法

调用 history.back() 会导航到浏览器历史记录中的上一页,效果与用户点击浏览器的“后退”按钮相同。

function goBack() {
  history.back();
}

使用 history.go() 方法

通过指定负数参数(如 -1)返回上一页,正数参数(如 1)前进到下一页。

function goBack() {
  history.go(-1);
}

监听浏览器返回按钮事件

通过 popstate 事件监听用户手动触发返回操作,适合需要在返回时执行额外逻辑的场景。

window.addEventListener('popstate', function(event) {
  console.log('用户触发了返回操作');
  // 自定义逻辑
});

使用 window.location 跳转

直接修改 window.location.href 或调用 replace() 方法强制跳转(无历史记录)。

// 返回上一页(需记录上一页URL)
function goBack() {
  window.location.href = document.referrer; // 获取来源页URL
}

// 替换当前页(不保留历史记录)
function replacePage() {
  window.location.replace('https://example.com');
}

单页应用(SPA)的路由返回

在 Vue、React 等框架中,使用路由库提供的导航方法(如 router.go(-1))。

js实现页面返回

// Vue Router 示例
this.$router.go(-1);

// React Router 示例
import { useNavigate } from 'react-router-dom';
const navigate = useNavigate();
navigate(-1);

注意事项

  • history.back()history.go(-1) 在无历史记录时无效。
  • 单页应用需确保路由库与浏览器历史记录同步。
  • 某些浏览器可能限制脚本触发的返回操作(如跨域限制)。

标签: 页面js
分享给朋友:

相关文章

vue实现预约页面

vue实现预约页面

实现预约页面的基本结构 使用Vue CLI或Vite创建一个新项目,安装必要依赖如vue-router和axios。项目结构建议包含components文件夹存放可复用组件,views文件夹存放页面级…

vue怎么实现页面返回

vue怎么实现页面返回

实现页面返回的方法 在Vue中实现页面返回功能可以通过以下几种方式: 使用Vue Router的go方法 this.$router.go(-1) 该方法接受一个整数参数,表示在历史记录中前进或后退…

js实现全屏

js实现全屏

实现全屏的基本方法 使用JavaScript实现全屏功能主要依赖Element.requestFullscreen()方法。现代浏览器均支持此API,但不同浏览器可能需要添加前缀。 // 触发全屏…

原生js实现轮播图

原生js实现轮播图

基本结构搭建 HTML部分需要包含轮播图容器、图片列表及导航按钮。结构示例如下: <div class="slider-container"> <div class="slid…

js 实现vue

js 实现vue

Vue.js 的基本实现 在 JavaScript 中实现 Vue.js 的核心功能,可以通过数据绑定、响应式系统和虚拟 DOM 来实现。以下是实现 Vue.js 核心功能的简化版本。 数据响应式系…

js类实现

js类实现

使用类实现 JavaScript 功能 在 JavaScript 中,类(Class)是一种语法糖,基于原型继承机制。通过 class 关键字可以更直观地定义对象模板。 基本类定义 class…