HTML页面跳转后返回原页面,H5跳转链接之后,返回原界面
时间: 2023-08-16 11:05:46 浏览: 123
在HTML中,可以使用JavaScript代码来实现页面跳转后返回原页面的操作。具体实现方式如下:
1. 首先,在跳转链接的页面中,使用JavaScript获取当前页面的URL,并将其保存到浏览器的SessionStorage中,代码如下:
```javascript
sessionStorage.setItem('prevUrl', window.location.href);
```
2. 然后,在跳转链接的页面中,设置该链接的目标页面,并在链接的目标页面中添加一个返回按钮,按钮的点击事件中使用JavaScript代码实现返回到原页面的功能,代码如下:
```html
<a href="targetPage.html" target="_blank">跳转链接</a>
<script type="text/javascript">
document.getElementById("backBtn").onclick = function() {
var prevUrl = sessionStorage.getItem('prevUrl');
window.location.href = prevUrl;
}
</script>
<button id="backBtn">返回</button>
```
这样,在跳转链接的页面点击返回按钮时,即可返回到原页面。
相关问题
原生页面跳转flutter页面后,返回原页面
在 Flutter 中,要从原生页面跳转到 Flutter 页面,可以使用 Flutter 提供的 `FlutterView`,并在原生页面中将其添加为子视图。这样就可以在原生页面中呈现 Flutter 页面了。
要在 Flutter 页面中返回原生页面,可以使用 Flutter 提供的 `Navigator` API。在 Flutter 页面中,使用 `Navigator.pop(context)` 方法即可返回到原生页面。
具体实现步骤如下:
1. 在原生页面中添加 FlutterView 作为子视图。
```java
FlutterView flutterView = Flutter.createView(this, getLifecycle(), "route1");
FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT);
addContentView(flutterView, layoutParams);
```
这里的 `"route1"` 指的是要跳转到的 Flutter 页面的路由名称,需要在 Flutter 项目中定义。
2. 在 Flutter 页面中使用 `Navigator.pop(context)` 方法返回原生页面。
```dart
RaisedButton(
child: Text('返回原生页面'),
onPressed: () {
Navigator.pop(context);
},
),
```
这样就可以在 Flutter 页面中返回原生页面了。
boost组件。原生页面跳转flutter页面后,返回原页面
Boost 是一个 Flutter 插件,它提供了一种从原生页面跳转到 Flutter 页面,并且可以在 Flutter 页面中使用 Navigator API 返回原生页面的方式。
具体实现步骤如下:
1. 在原生页面中配置 Boost。
```java
public class MainActivity extends AppCompatActivity {
private BoostFlutterActivityDelegate delegate;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
delegate = new BoostFlutterActivityDelegate(this, savedInstanceState);
setContentView(delegate.getContainer());
delegate.onCreate(savedInstanceState);
}
@Override
protected void onResume() {
super.onResume();
delegate.onResume();
}
@Override
protected void onPause() {
super.onPause();
delegate.onPause();
}
@Override
protected void onStop() {
super.onStop();
delegate.onStop();
}
@Override
protected void onDestroy() {
super.onDestroy();
delegate.onDestroy();
}
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
delegate.onSaveInstanceState(outState);
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
delegate.onRestoreInstanceState(savedInstanceState);
}
@Override
public void onBackPressed() {
if (!delegate.onBackPressed()) {
super.onBackPressed();
}
}
}
```
这里的 `BoostFlutterActivityDelegate` 是 Boost 提供的一个类,它可以实现从原生页面跳转到 Flutter 页面,并且可以在 Flutter 页面中返回原生页面。
2. 在原生页面中跳转到 Flutter 页面。
```java
BoostFlutterActivityBuilder builder = BoostFlutterActivityBuilder.withUrl("flutter_page");
Boost.instance().boost(this, builder);
```
这里的 `"flutter_page"` 指的是要跳转到的 Flutter 页面的路由名称,需要在 Flutter 项目中定义。
3. 在 Flutter 页面中使用 Navigator API 返回原生页面。
```dart
RaisedButton(
child: Text('返回原生页面'),
onPressed: () {
BoostNavigator.instance.pop();
},
),
```
这里的 `BoostNavigator.instance.pop()` 方法可以返回原生页面。
这样就可以在原生页面跳转到 Flutter 页面,并且可以在 Flutter 页面中返回原生页面了。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)