页面跳转后,仅仅第一次执行js,后面刷新不执行该js 您所在的位置:网站首页 js调用url不跳转 页面跳转后,仅仅第一次执行js,后面刷新不执行该js

页面跳转后,仅仅第一次执行js,后面刷新不执行该js

2024-03-23 22:22| 来源: 网络整理| 查看: 265

文章目录 逻辑跳转前的页面跳转之后的页面实现效果 其实我的js执行的是一个弹窗,只想让其在第一次跳转的时候弹出。而之后刷新页面,不想再让其弹出

逻辑

从前一个跳转过来的页面中,修改地址栏,加上一个参数。在要弹窗的页面中,判断这个参数是否存在。存在则调用弹窗方法。执行完后,修改地址栏(修改并不刷新),然后刷新之后,并不会再次弹窗。

跳转前的页面 新建案例 //使用js实现新建案例的页面跳转 function turnToAlumList() { //举个例子,本来你想要访问的页面是http://www.fff.com //加上一个判断参数:http://www.fff.com?isRefresh=false //这样并不会影响你的跳转 location.href = '你要跳转的页面url加上参数&isRefresh=false';//跳转页面 } 跳转之后的页面 获取地址栏参数的方法 //获取地址栏参数的方法 function GetQueryString(name) { var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if(r!=null)return unescape(r[2]); return null; } 第一次执行js后,修改地址栏url //第一次弹窗,弹窗后修改地址栏,并让之后按着修改后的地址栏进行刷新 //我们刚刚设置的参数名字为isRefresh,值是false。这边通过GetQueryString方法就可以获取到 var isRefresh = GetQueryString("isRefresh"); window.onload = function () { //第一次过来的时候,获取到了参数值,所以会弹窗 if(isRefresh == "false"){ getTip(0); //这是我本人的弹窗方法,改成你自己的 var url = window.location.href; window.history.pushState({},0,"这里放上不带参数的原url"); } } 实现效果

最后实现效果: 最后实现仅仅在第一次跳转弹出那个窗口,而刷新不会再弹出



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有