在写纯前端项目时遇到了使用JavaScript实现跳转后后面的js就不再执行的情况。
原本自己是希望在完成页面跳转后再实现一段JavaScript的功能。但是尝试了好久都不能实现,假如这不是个纯前端项目则可以通过后端传参功能实现。经过思考前端可以在页面间传递参数的只有url了。于是有了如下的解决方案。
功能描述:
要从A页面点击某按键跳转至B页面,然后自动执行一段JavaScript。
解决步骤:
1、首先在A页面的相关跳转路径添加一个标识字符
假设是通过点击a标签实现的跳转(如下):
<a href="aaa.html"></a>
现在在html后面添加?
+标记字符(这里以1为例)
<a href="aaa.html?1"></a>
此时当你点击跳转到aaa.html
页面时会发现url后面会跟上?1
。
2、接下来的操作是根据url返回值进行相应的JavaScript功能的实现
写如下JavaScript代码
function f() {
var url = top.window.location.href;
//获取当前url存在var的url中
var u = url.split("?");
//对url以?为分界切片
//此时url[0]=问号前面的字符,url[1]=问号后面的字符
//接下来使用判断语句根据url[1]的值来执行相应的JavaScript的功能
if(u[1] == 1) {
//这里写JavaScript的具体功能
}
}
f();//默认界面开始即执行方法
这里感谢我前室友在对我这个问题的帮助,同时也分享出来希望帮到更多人。