溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

SSH系列:(21)Session過(guò)期,登錄頁(yè)面嵌套的問(wèn)題

發(fā)布時(shí)間:2020-08-21 09:43:08 來(lái)源:網(wǎng)絡(luò) 閱讀:591 作者:lsieun 欄目:數(shù)據(jù)庫(kù)


在系統(tǒng)中使用了frameset,當(dāng)前用戶(hù)的系統(tǒng)登錄信息失效后;如果再點(diǎn)擊左邊的菜單,那么在右邊的顯示登錄頁(yè)面,而正確的應(yīng)該是整個(gè)頁(yè)面返回到登錄頁(yè)。

 

解決這個(gè)問(wèn)題:應(yīng)該在跳轉(zhuǎn)到登錄頁(yè)面中使用js腳本判斷,是否當(dāng)前頁(yè)面在框架內(nèi),即當(dāng)前頁(yè)面的窗口是否是頂級(jí)窗口,如果是子窗口的話(huà);可以直接刷新父窗口的地址則會(huì)自動(dòng)地整個(gè)頁(yè)面跳轉(zhuǎn)為登錄頁(yè)。

<scripttype="text/javascript">
         if(window!= window.parent){
                   window.parent.location.reload(true);
         }
</script>

或許下面的更合適

//解決子框架嵌套的問(wèn)題
if(window.self != window.top){	
    window.top.location.reload(true);
}


window.parent說(shuō)明: window.parent能獲取一個(gè)框架的父窗口或父框架。頂層窗口的parent引用的是它本身,可以用這一點(diǎn)特性來(lái)判斷這個(gè)窗口是否是頂層窗口。


地址:http://blog.csdn.net/zdwzzu2006/article/details/6047632



在應(yīng)用有frameset或者iframe的頁(yè)面時(shí),parent是父窗口,top是最頂級(jí)父窗口(有的窗口中套了好幾層frameset或者iframe),self是當(dāng)前窗口, opener是用open方法打開(kāi)當(dāng)前窗口的那個(gè)窗口。

 

window.self

功能:是對(duì)當(dāng)前窗口自身的引用。它和window屬性是等價(jià)的。

語(yǔ)法:window.self

注:window、self、window.self是等價(jià)的。

 


window.top

功能:返回頂層窗口,即瀏覽器窗口。

語(yǔ)法:window.top

注:如果窗口本身就是頂層窗口,top屬性返回的是對(duì)自身的引用。

 

window.parent

功能:返回父窗口。

語(yǔ)法:window.parent

注:如果窗口本身是頂層窗口,parent屬性返回的是對(duì)自身的引用。

在框架網(wǎng)頁(yè)中,一般父窗口就是頂層窗口,但如果框架中還有框架,父窗口和頂層窗口就不一定相同了。

 

判斷當(dāng)前窗口是否在一個(gè)框架中:

<script type="text/JavaScript">
var b = window.top!=window.self;
document.write( "當(dāng)前窗口是否在一個(gè)框架中:"+b );
</script>

你應(yīng)當(dāng)將框架視為窗口中的不同區(qū)域,框架是瀏覽器窗口中特定的部分。一個(gè)瀏覽器窗口可以根據(jù)你的需要分成任意多的框架,一個(gè)單個(gè)的框架也可以分成其它多個(gè)框架,即所謂的嵌套框架。



地址:https://developer.mozilla.org/en-US/docs/Web/API/Location/reload

Location.reload()

The Location.reload() method reloads the resource from the current URL. Its optional unique parameter is a Boolean, which, when it is true, causes the page to always be reloaded from the server. If it is false or not specified, the browser may reload the page from its cache.


SSH系列:(21)Session過(guò)期,登錄頁(yè)面嵌套的問(wèn)題





向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

ssh
AI