亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

返回上一個(gè)url并刷新界面的js代碼

 更新時(shí)間:2020年09月12日 12:33:44   投稿:mdxy-dxy  
要返回上一頁(yè)再刷新頁(yè)面我們用到最多的是在像php,asp,jsp,asp.net中,下面我來(lái)給大家先介紹js 返回前一頁(yè)并刷新頁(yè)面,然后再把這些代碼放在php中實(shí)現(xiàn)刪除后返回當(dāng)前頁(yè)面并刷新頁(yè)面

JS 重載頁(yè)面,本地刷新,返回上一頁(yè)

<a href="javascript:history.go(-1)" rel="external nofollow" >返回上一頁(yè)</a>
<a href="javascript:location.reload()" rel="external nofollow" >重載頁(yè)面,本地刷新</a>
<a href="javascript:history.go(-1);location.reload()" rel="external nofollow" >返回上一頁(yè)重載頁(yè)面,本地刷新</a>

history.back();
back();

上面兩個(gè)方法不行,多次嘗試后,用下面的解決了

location.href=document.referrer;

返回前二頁(yè)并刷新的JS代碼應(yīng)該怎樣寫(xiě)。

js 方法

<a href="#" rel="external nofollow" onclick="self.location=document.referrer;">返回</a>

asp自動(dòng)返回并刷新的方法:

response.Write("<script language=javascript>self.location=document.referrer;</script>")

一般用于向一個(gè)頁(yè)面提交action后返回前一頁(yè)并刷新!

php做法

echo "<script>alert('退出成功!');location.href='".$_SERVER["HTTP_REFERER"]."';</script>";

設(shè)置刪除成功后返回前一頁(yè),并刷新

if($query)
{
$page="listrenwu.php";
<!---這種方式不會(huì)刷新,只會(huì)原樣返回-->
echo "<script>alert('刪除成功');history.go(-1)</script>";
<!--//設(shè)置刪除成功后返回前一頁(yè),并刷新-->-->
echo "<script>alert('刪除成功');window.location = "".$page."";</script>";
}

這個(gè)算是php教程中最簡(jiǎn)單的哦,不多說(shuō)你懂的。

下面是其他網(wǎng)友的補(bǔ)充

使用history.length判斷是否有上一頁(yè)面,如果沒(méi)有就返回到指定頁(yè)面

使用history.length判斷是否有上一頁(yè)面,如果沒(méi)有就返回到指定頁(yè)面,一般是返回到首頁(yè)

function goBack(){
  if ((navigator.userAgent.indexOf('MSIE') >= 0) && (navigator.userAgent.indexOf('Opera') < 0)){ // IE
    if(history.length > 0){
      window.history.go( -1 );
    }else{
      window.location.href = "/";
    }
  }else{ //非IE瀏覽器
    if (navigator.userAgent.indexOf('Firefox') >= 0 ||
      navigator.userAgent.indexOf('Opera') >= 0 ||
      navigator.userAgent.indexOf('Safari') >= 0 ||
      navigator.userAgent.indexOf('Chrome') >= 0 ||
      navigator.userAgent.indexOf('WebKit') >= 0){
 
      if(window.history.length > 1){
        window.history.go( -1 );
      }else{
        window.location.href = "/";
      }
    }else{ //未知的瀏覽器
      window.history.go( -1 );
    }
  }
}

從這里想到一個(gè)用戶的特殊需求,那就是在公眾號(hào)中輸入生日后 ,關(guān)閉H5,讓公眾號(hào)彈出二維碼。當(dāng)時(shí)說(shuō)不可能,現(xiàn)在看來(lái)自己太年輕了。

window.opener=null;
window.close();

接著補(bǔ)充

前言

使用單頁(yè)面的話 document.referrer 一直為空(.html或者ssr網(wǎng)頁(yè)則存在值)
History.length 表示用戶歷史會(huì)話頁(yè)面的數(shù)量。當(dāng)用戶從新的標(biāo)簽頁(yè)或框架載入頁(yè)面其值為“1”,每訪問(wèn)一個(gè)頁(yè)面該值增加“1”。
因?yàn)閔istory.length 的數(shù)量只增不減,根本不能拿來(lái)做判斷。

場(chǎng)景

需要判斷用戶從微信瀏覽器通過(guò)瀏覽器打開(kāi)當(dāng)前網(wǎng)頁(yè),如果是則當(dāng)用戶點(diǎn)擊返回按鈕時(shí)返回到web應(yīng)用(站點(diǎn))首頁(yè)

- 或:是否有前一頁(yè)
- 通過(guò)history.length
- 不準(zhǔn)確,如果用戶曾經(jīng)打開(kāi)過(guò),則會(huì)存在更多的history.length
- 如果用戶不曾打開(kāi)過(guò),且直接從微信瀏覽器再使用系統(tǒng)瀏覽器打開(kāi),則history.length === 1(其中手機(jī)瀏覽器中為1,chrome控制臺(tái)為2)
- 或:判斷用戶是否訪問(wèn)過(guò)
- 通過(guò)cookie或是sessionStorage

- https://oldj.net/blog/2013/08/11/browser-history-sniffing

- 或:判斷 history 中是否存在指定url
- 沒(méi)有找到相關(guān)方法
- 或:是否是通過(guò)微信瀏覽器喚醒設(shè)備瀏覽器再打開(kāi)到當(dāng)前網(wǎng)頁(yè)的
- 沒(méi)有找到相關(guān)方法
肯定還有其他方法實(shí)現(xiàn) `當(dāng)用戶點(diǎn)擊返回按鈕時(shí)返回到web應(yīng)用(站點(diǎn))首頁(yè)` 這個(gè)功能的,現(xiàn)在腦袋有點(diǎn)暈,如果有的話,也希望能得到分享,非常感謝。
對(duì)了,Vuex能否判斷呢?實(shí)在是沒(méi)有找到相關(guān)方法,或許有。

最后

別忘記監(jiān)聽(tīng)瀏覽器的返回事件啦 :

window.addEventListener("popstate", function(e) {
alert("我監(jiān)聽(tīng)到了瀏覽器的返回按鈕事件啦");//根據(jù)自己的需求實(shí)現(xiàn)自己的功能
}, false);

我是如何解決的

當(dāng)用戶在微信中打開(kāi)web應(yīng)用(站點(diǎn))時(shí),則提示用戶使用瀏覽器打開(kāi);
再配合Cookie和sessionStorage做緩存了router記錄來(lái)判斷用戶點(diǎn)擊返回按鈕時(shí)是否需要直接回到home頁(yè);

到此這篇關(guān)于返回上一個(gè)url并刷新界面的js代碼的文章就介紹到這了,更多相關(guān)js返回上一個(gè)url內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論