今天我們來講講在我們?nèi)粘5顷懼卸紩?huì)遇到的問題:“怎么設(shè)置在登錄過期后跳出Ifram框架?”對(duì)于這個(gè)問題,小編在經(jīng)過收集和整理相關(guān)內(nèi)容得到了以下內(nèi)容!
1、文章背景
我們?cè)谧龊笈_(tái)項(xiàng)目管理時(shí),常用 Ifram 框架來加載頁(yè)面,即:
<iframe src="url"></iframe>
我們使用 iframe 標(biāo)簽來加載頁(yè)面,該 src 可以指向不同的頁(yè)面,從而我們可以在一個(gè)網(wǎng)頁(yè)中打開更多的頁(yè)面,但是我們也需要盡可能地控制同事打開的網(wǎng)頁(yè)數(shù),避免客戶端消耗太大導(dǎo)致網(wǎng)頁(yè)崩潰。網(wǎng)頁(yè)效果如下:
2、問題描述
那上一步,我們已經(jīng)了解了 Ifram 框架,整體大概分為:菜單欄,導(dǎo)航欄,和主體 Ifram 內(nèi)容,那么當(dāng)我們登錄信息過期的時(shí)候,系統(tǒng)會(huì)進(jìn)行登錄攔截,導(dǎo)致頁(yè)面跳到登錄界面,如下:
可以看出,當(dāng)我們登錄信息過期之后,ifram 加載了登錄界面,當(dāng)我們輸入了登錄信息之后,發(fā)現(xiàn)如下:
那么客戶是不清楚發(fā)生了什么事的,一定會(huì)覺得這個(gè)系統(tǒng)是不是出問題了,這對(duì)用戶體驗(yàn)是極差的
3、解決方案
以上,我們了解了 ifram 加載的頁(yè)面,會(huì)導(dǎo)致登錄信息過期時(shí),加載了登錄界面,影響用戶體驗(yàn),那么解決方法如下:
// 登錄過期的時(shí)候,跳出ifram框架
if (top.location != self.location) {
top.location = self.location
};
我們?cè)诘卿浗缑娴?JS 中,加上如上代碼,表示當(dāng)前窗體的 URL 與 父窗體的 URL 是否不相等,不相等則父窗體的 URL 等于當(dāng)前窗體的 URL,這樣就能成功跳出 Ifram 框架了
以上就是有關(guān)于:“怎么設(shè)置在登錄過期后跳出Ifram框架?”這方面的全部相關(guān)內(nèi)容,希望小編的分享可以幫助到大家,對(duì)于有喜歡html5這方面的相關(guān)內(nèi)容我們都可以在W3Cschool中進(jìn)行學(xué)習(xí)和了解!