JS JavaScript实现h5页面间跳转

一、不在JS中跳转

如果你不想在 JavaScript 中写页面跳转,而是希望使用 HTML 或者其它前端方式来实现页面跳转,下面是一些常见的方法:

1. 使用 <a> 标签进行跳转
HTML 中最常见的跳转方式就是使用 <a> 标签。它可以让用户点击链接进行页面跳转。

<a href="https://www.example.com">跳转到 Example</a>

如果你想要跳转到其他页面,可以设置 href 属性为目标页面的 URL。点击链接后,页面会跳转。

示例:
<a href="about.html">关于我们</a>

如果你希望跳转到新窗口:
<a href="https://www.example.com" target="_blank">跳转到 Example</a>

target="_blank" 属性会在新窗口中打开目标页面。

2. 使用 <form> 提交表单进行跳转
如果需要在用户提交表单时跳转,可以使用 HTML 表单 (<form>) 元素。

<form action="https://www.example.com" method="get"> <button type="submit">提交并跳转</button> </form>

表单的 action 属性指定了提交的目标 URL,method 属性指定了请求的方法(GET 或 POST)。点击提交按钮时,浏览器会跳转到指定的 URL。

3. 使用 <meta> 标签进行自动跳转
如果你希望页面加载完成后自动跳转到另一个 URL,可以使用 <meta> 标签。

<head> <meta http-equiv="refresh" content="3;url=https://www.example.com"> </head>

content="3;url=https://www.example.com" 表示页面将在 3 秒后自动跳转到指定的 URL。你可以根据需要修改时间(单位为秒)。

4. 使用 <base> 标签设置基本的跳转路径
如果你希望页面中所有相对链接都指向某个固定的基础 URL,可以使用 <base> 标签。

<head> <base href="https://www.example.com/"> </head>

此时,页面中所有相对路径的链接都会基于 https://www.example.com/ 进行解析。

5. 使用 <iframe> 标签进行嵌入页面跳转
如果你想要在当前页面内跳转并显示另一个页面,而不是完整地跳转到另一个页面,可以使用 <iframe> 标签将另一个页面嵌入当前页面。

<iframe src="https://www.example.com" width="600" height="400"></iframe>

这样,目标页面会被加载到 <iframe> 内,而当前页面仍然保持不变。

这些方法中,<a> 标签是最常用的页面跳转方式。如果你只需要用户点击链接跳转页面,使用 <a> 标签最为简单和直观。其他方式则适用于不同的场景,具体选择哪一种取决于你的需求。

二、在JS中跳转

在 HTML5 中使用 JavaScript 来实现页面跳转是非常简单的。你可以通过以下几种方式来实现:

1. 使用 window.location 实现页面跳转
window.location 是 JavaScript 提供的一个对象,可以用于获取当前页面的 URL 或设置新的 URL 来进行页面跳转。
// 跳转到一个新的页面
window.location.href = 'https://www.example.com';

// 或者使用相对路径跳转
window.location.href = 'anotherpage.html';
2. 使用 window.location.assign() 方法
assign() 方法用于加载新的页面,它与直接设置 window.location.href 很相似。不同之处在于 assign() 方法会将当前页面添加到浏览器的历史记录中。
window.location.assign('https://www.example.com');
3. 使用 window.location.replace() 方法
replace() 方法也用于跳转页面,但是它不会将当前页面添加到浏览器的历史记录中。使用这种方式跳转后,用户不能通过浏览器的“后退”按钮返回到原来的页面。
window.location.replace('https://www.example.com');
4. 使用 window.location.reload() 刷新当前页面
如果你只想刷新当前页面,可以使用 reload() 方法。
window.location.reload();
5. 跳转到一个特定的锚点
如果你想跳转到页面中的某个位置,可以使用锚点(#)来实现跳转:
window.location.href = '#section-id'; // 假设页面中有 id="section-id" 的元素
6. 使用 location 对象中的其他属性
你还可以使用 window.location 的其他属性,如:

window.location.pathname 获取或设置路径部分
window.location.search 获取或设置查询字符串
window.location.hash 获取或设置哈希部分
例子:跳转到某个页面并附带参数
window.location.href = 'https://www.example.com?param1=value1&param2=value2';
总结
window.location.href 和 window.location.assign() 都用于跳转页面,但前者会直接改变当前页面的 URL,后者则会将跳转添加到浏览器的历史记录中。
window.location.replace() 会跳转并替换掉当前页面,因此无法通过浏览器的“后退”按钮返回。
window.location.reload() 用于刷新当前页面。
你可以根据实际需要选择不同的方式来跳转页面。

三、代码示例

index.html 和 detail.html在同一目录下,实现页面跳转。

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head><body>Hello World!<br /><label for="tel">手机号</label><input id="tel" v-model="" placeholder="tel" placeholder-class="input-placeholder" @input=""><!-- <a href="detail.html" >点我查看详情</a>  --> <!-- 跳转 --><a href="detail.html" target="_blank">点我查看详情</a> <!-- 跳转+打开新标签页 --><br /><!-- <button onclick="window.location.href='detail'">详情</button> --><button id="btn">详情</button><script>const btn = document.getElementById('btn').addEventListener('click', function () {console.log('成功!');//window.location.href = 'detail.html' // 跳转//window.location.assign('detail.html') // 跳转window.open('detail.html', '_blank') // 跳转+打开新标签页})</script>
</body></html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/59563.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

scala学习记录,Set,Map

set&#xff1a;集合&#xff0c;表示没有重复元素的集合&#xff0c;特点&#xff1a;唯一 语法格式&#xff1a;val 变量名 Set [类型]&#xff08;元素1&#xff0c;元素2...&#xff09; 可变不可变 可变&#xff08;mutable&#xff09;可对元素进行添加&#xff0c;删…

基于SpringBoot的免税商品优选购物商城的设计与实现

一、项目背景 从古至今&#xff0c;通过书本获取知识信息的方式完全被互联网络信息化&#xff0c;但是免税商品优选购物商城&#xff0c;对于购物商城工作来说&#xff0c;仍然是一项非常重要的工作。尤其是免税商品优选购物商城&#xff0c;传统人工记录模式已不符合当前社会…

【深度学习】DreamClear:提升图片分辨率的模型

基于PixArt-XL-2模型,效果很好。 DreamClear:高容量真实世界图像修复与隐私安全数据集构建 在图像修复领域,处理真实世界中的低质量(Low-Quality, LQ)图像并恢复其高质量(High-Quality, HQ)版本一直是一个具有挑战性的任务。今天,我们将介绍一个最新的开源项目——Dr…

从零开始的c++之旅——多态

1. 多态的概念 通俗来说就是多种形态。 多态分为编译时多态&#xff08;静态多态&#xff09;和运行时多态&#xff08;动态多态&#xff09;。 编译时多态主要就是我们之前提过的函数重载和函数模板&#xff0c;同名提高传不同的参数就可以调 用不同的函数&#xff0c…

js实现blob类型转化为excel文件

需求 后端通过接口将excel文件通过blob类型数据进行返回&#xff0c;前端接收数据并将其转化为excel文件进行下载 实现 接口方法 responseType&#xff1a;值为blob&#xff0c;标记返回数据类型为blob Content-Type&#xff1a;请求头设置&#xff0c;值为application/vnd…

融云「北极星」专业版:指标异常及时告警,趋势变化预先知悉

说起程序员的痛苦时刻&#xff0c;深夜接到告警电话、短信绝对榜上有名&#xff0c;甚至可能留下“铃声 PTSD”。 这也从另一个侧面提醒我们&#xff0c;所有在前台给用户丝滑体验的互联网产品&#xff0c;背后都有庞杂的系统和大量的工程师在支撑。而这其中&#xff0c;监控平…

安全篇(1)判断安全固件

判断安全固件的方法 一、通过串口开机打印 改方法适用Android与Tina 1.开机打印为SBOOT为安全 [289]HELLO! SBOOT is starting! 2.开机打印boot0为非安全 [88]BOOT0 commit : 1cbb5ea8b3 二、通过读数据 1.getprop | grep verifiedbootstate 这条命令的输出表示设备的…

火山引擎VeDI数据服务平台:在电商场景中,如何解决API编排问题?

01 平台介绍 数据服务平台可以在保证服务高可靠性和高安全性的同时&#xff0c;为各业务线搭建数据服务统一出口&#xff0c;促进数据共享&#xff0c;为数据和应用之间建立了一座“沟通桥梁”。 同时&#xff0c;解决数据理解困难、异构、重复建设、审计运维困难等问题&#x…

在Ubuntu 上实现 JAR 包的自启动

在 Ubuntu 上实现 JAR 包的自启动&#xff0c;可以通过以下几种方法&#xff1a; 方法一&#xff1a;使用 systemd 创建一个服务文件&#xff1a; 在 /etc/systemd/system/ 目录下创建一个新的服务文件&#xff0c;例如 myapp.service&#xff1a; sudo nano /etc/systemd/sys…

Object 内部类 异常

Objbect类 java提供了Object,它是所有类的父类,每个类都直接或间接的继承了Object类,因此Object类通常被称为超类 当定义一个类时,如果没有使用extends关键字直接去指定父类继承,只要没有被继承的类,都是会默认的去继承Object类,超类中定义了一些方法 方法名称方法说明boole…

SQLite -- 一个遵守君子协定的数据库

用惯了Oracle、PostgreSQL等数据库&#xff0c;今天接触到SQLite&#xff0c;简单尝试了下使用&#xff0c;顿感震惊&#xff01;&#xff01;&#xff01; 与传统的关系型数据库&#xff08;如 MySQL、PostgreSQL 等&#xff09;相比&#xff0c;它的约束是真的宽松。具体来说…

Linux 高级IO

学习任务&#xff1a; 高级 I/O&#xff1a;select、poll、epoll、mmap、munmap 要求&#xff1a; 学习高级 I/O 的用法&#xff0c;并实操 1、高级 I/O&#xff1a; 前置知识&#xff1a; 阻塞、I/O 多路复用 PS: 非阻塞 I/O ------ 非阻塞 I/O 阻塞其实就是进入了休眠状态&am…

JAVA WEB — HTML CSS 入门学习

本文为JAVAWEB 关于HTML 的基础学习 一 概述 HTML 超文本标记语言 超文本 超越文本的限制 比普通文本更强大 除了文字信息 还可以存储图片 音频 视频等标记语言 由标签构成的语言HTML标签都是预定义的 HTML直接在浏览器中运行 在浏览器解析 CSS 是一种用来表现HTML或XML等文…

ASRPRO 日历2

为避免与天问的ID冲突 ID前加10000 为使识别更顺畅 将 日期-月份 12月21日 合并 ;时间 10点25分 合并 通过串口获取日期 为使用常用词 计倒时 下周 明天,需通过串口获取当前日期 + 命令词 增加 我的 A的 B的 关系词 与任务 生日 买菜 增加 可自定义 任务 执行程序 双进…

Linux——Linux基础指令

Linux基本指令 文章目录 Linux基本指令1. 基础五指令(1) whoami(2) who(3) pwd(4) ls(5) clear 2. 文件常见命令(1) touch(2) mkdir(3) cp(4) mv(5) rm(6) cd 3. 常见IO命令(1) cat(2) tac(3) head(4) tail(5) more(6) less 4. 拓展命令(1) man手册(2) which(3) file(4) date(5…

雷池社区版 7.1.0 LTS 发布了

LTS&#xff08;Long Term Support&#xff0c;长期支持版本&#xff09;是软件开发中的一个概念&#xff0c;表示该版本将获得较长时间的支持和更新&#xff0c;通常包含稳定性、性能改进和安全修复&#xff0c;但不包含频繁的新特性更新。 作为最受欢迎的社区waf&#xff0c…

出海企业如何借助云计算平台实现多区域部署?

云计算de小白 如需进一步了解&#xff0c;请单击链接了解有关 Akamai 云计算的更多信息 在本文中我们将告诉大家如何在Linode云计算平台上借助VLAN快速实现多地域部署。 首先我们需要明确一些基本概念和思想&#xff1a; 部署多区域 VLAN 为了在多区域部署中在不同的 VLAN …

RDD转换算子:【map】

功能&#xff1a; 对RDD中每个元素调用一次参数中的函数&#xff0c;并将每次调用的返回值放入一个新的RDD中&#xff08;一对一&#xff09; 语法&#xff1a; def map(self , f: T -> U ) -> RDD[U]f&#xff1a;代表参数是一个函数 T&#xff1a;代表RDD中的每个元…

如何更好的crud

一、DDD是什么&#xff1f; DDD全名叫做Domins drives Design&#xff1b;领域驱动设计。再说的通俗一点就是&#xff1a;通过领域建模的方式来实现软件设计。 问题来了&#xff1a;什么是软件设计&#xff1f;为什么要进行软件设计&#xff1f; 软件开发最主要的目的就是&…

AI赋能酒店设计|莱佛士学生成功入围WATG设计大赛

近日&#xff0c;由Wimberly Allison Tong & Goo&#xff08;WATG&#xff09;主办的“用人工智能重新构想酒店行业的未来”设计比赛正式拉开帷幕。这场设计比赛&#xff0c;不仅是为了庆祝WATG即将步入80周年&#xff0c;更是为了激发年轻设计师们的创造力和探索实践精神&…