当前位置:首页 > JavaScript

js实现跳转

2026-01-08 12:15:48JavaScript

使用 window.location 跳转

通过修改 window.location.href 或直接使用 window.location 实现页面跳转,适用于普通跳转或带参数的 URL。

// 方法1:直接赋值
window.location.href = 'https://example.com';

// 方法2:简写形式
window.location = 'https://example.com';

// 带参数的跳转
window.location.href = 'https://example.com?param=value';

使用 location.assign()

location.assign() 方法会加载新文档并保留浏览器历史记录,允许用户通过后退按钮返回原页面。

location.assign('https://example.com');

使用 location.replace()

location.replace() 直接替换当前页面,不保留历史记录,用户无法通过后退按钮返回。

location.replace('https://example.com');

使用 window.open()

在新标签页或窗口中打开链接,可通过参数控制打开方式。

// 新标签页打开(默认)
window.open('https://example.com');

// 新窗口打开
window.open('https://example.com', '_blank');

// 当前窗口打开(等效于 location.href)
window.open('https://example.com', '_self');

使用 meta 标签跳转

通过动态插入 <meta> 标签实现延迟跳转,常用于页面自动跳转场景。

// 3秒后跳转
const meta = document.createElement('meta');
meta.httpEquiv = 'refresh';
meta.content = '3;url=https://example.com';
document.head.appendChild(meta);

使用表单提交跳转

通过动态创建表单并提交实现 POST 跳转,适用于需要传递表单数据的场景。

const form = document.createElement('form');
form.method = 'POST';
form.action = 'https://example.com';

const input = document.createElement('input');
input.type = 'hidden';
input.name = 'data';
input.value = 'example';
form.appendChild(input);

document.body.appendChild(form);
form.submit();

使用 History API

通过 history.pushState()history.replaceState() 修改浏览器地址栏而不刷新页面,适用于单页应用(SPA)。

// 添加历史记录并跳转
history.pushState({}, '', '/new-path');

// 替换当前历史记录
history.replaceState({}, '', '/new-path');

注意事项

  • 使用 window.open() 可能被浏览器拦截,需确保由用户触发(如点击事件)。
  • location.replace() 不保留历史记录,适合登录后跳转等场景。
  • History API 需配合前端路由框架使用,单独调用可能需手动处理页面内容更新。

js实现跳转

标签: 跳转js
分享给朋友:

相关文章

js 实现vue

js 实现vue

实现 Vue 的核心功能 在 JavaScript 中实现 Vue 的核心功能需要模拟数据绑定、虚拟 DOM 和响应式系统。以下是一个简化版的实现思路: 响应式系统 通过 Object.define…

vue实现拼接路径实现跳转

vue实现拼接路径实现跳转

实现拼接路径跳转的方法 在Vue中,可以通过多种方式拼接路径并实现跳转。以下是几种常见的实现方法: 使用router-link组件 通过模板中的router-link组件动态拼接路径: <r…

vue实现点击跳转

vue实现点击跳转

Vue 实现点击跳转的方法 在 Vue 中实现点击跳转可以通过以下几种方式: 使用 router-link router-link 是 Vue Router 提供的组件,用于声明式导航。适合在模板中…

php实现页面跳转

php实现页面跳转

PHP实现页面跳转的方法 在PHP中,可以通过多种方式实现页面跳转,以下是几种常用的方法: header函数跳转 header("Location: target_page.php"); ex…

js实现

js实现

JavaScript 实现方法 JavaScript 是一种广泛使用的编程语言,适用于网页开发、服务器端编程以及移动应用开发。以下是几种常见的 JavaScript 实现方法: 网页交互功能 使用…