欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

layer實現(xiàn)關(guān)閉彈出層刷新父界面功能詳解

 更新時間:2017年11月15日 11:36:51   作者:武文博KevinLM  
這篇文章主要介紹了layer實現(xiàn)關(guān)閉彈出層刷新父界面功能,結(jié)合實例形式分析了使用layui的layer在關(guān)閉彈出層時刷新父界面的常用實現(xiàn)技巧與相關(guān)操作注意事項,需要的朋友可以參考下

本文實例講述了layer實現(xiàn)關(guān)閉彈出層刷新父界面功能。分享給大家供大家參考,具體如下:

layer是一款近年來備受青睞的web彈層組件,她具備全方位的解決方案,致力于服務各水平段的開發(fā)人員,您的頁面會輕松地擁有豐富友好的操作體驗。

最近一個項目采用的是hui前端框架,他的彈出層就是用的layer插件,對于彈出層,有一個操作體驗大家都知道,就是關(guān)閉彈出層,需要刷新父頁面。開始寫的時候,我陷入了自己的誤區(qū),在彈出層處理成功之后,我調(diào)用的是:

var index = parent.layer.getFrameIndex(window.name);
parent.location.href=url;
parent.layer.close(index);

這個地方是這樣寫也沒錯,但是如果這么寫,它就只能被一個地方調(diào)用了,如果有多個地方調(diào)用的話,它不能返回原地址,而是重定向到新的url地址上去了。而剛好,在我的項目中間,某一個彈出層被兩個地方調(diào)用了,所以很明顯這種方案就不合適了,需要優(yōu)化。百度了一下,找到如下兩種優(yōu)化方案:

方案一:

在layer彈出層中調(diào)用父界面重新加載函數(shù)

window.parent.location.reload();
var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);

方案二:

調(diào)用layer插件的end回調(diào)方法:

end - 層銷毀后觸發(fā)的回調(diào)

類型:Function,默認:null

無論是確認還是取消,只要層被銷毀了,end都會執(zhí)行,不攜帶任何參數(shù)。

父窗口打開layer彈出框時,添加end回調(diào)

function openLayer() {
  //iframe層
    parent.layer.open({
      type: 2,
      title: '修改',
      shadeClose: false, //點擊遮罩關(guān)閉
      shade: 0.8,
      area: ['30%', '45%'],
      maxmin: true,
      closeBtn: 1,
      content: [url, 'yes'], //iframe的url,yes是否有滾動條
      end: function () {
        location.reload();
      }
});

layer彈出框處理完成之后,就不需要調(diào)用其他刷新操作函數(shù)了,直接關(guān)閉就行了

var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);

相比較而言,第一種方案會更佳,因為在操作邏輯上,手動關(guān)閉彈出框,應該不觸發(fā)刷新操作,只有當彈出框的處理邏輯執(zhí)行成功后,調(diào)用函數(shù)關(guān)閉彈出框才觸發(fā)父界面刷新操作,基于這個邏輯,應該選擇方案一。方案二,不管怎樣都會刷新頁面,實際上無端的增加了服務器的處理壓力。

方案二:可以解決子頁面處理后的結(jié)果發(fā)送給子頁面的父頁面的問題。

對于layer.js出現(xiàn)回調(diào)關(guān)閉父類的彈出層時,之前的表單的submit失效的問題:

如何解決:網(wǎng)上有很多,有的是轉(zhuǎn)為ajax的請求,在數(shù)據(jù)傳輸完再關(guān)閉父類的彈出層:

下面是關(guān)閉父彈出層的辦法:

var index = parent.layer.getFrameIndex(window.name); //獲取窗口索引
parent.layer.close(index); // 關(guān)閉layer

采用ajax這樣可以,但是我做的是支付,要彈出頁面才能支付,不能轉(zhuǎn)換為ajax,怎么幫?后面我老大說:“你就不能晚點執(zhí)行關(guān)閉嗎”?這是一個想法試了一下就好了。

附上代碼:

$("#myForm").submit();
var index = parent.layer.getFrameIndex(window.name); //獲取窗口索引
setTimeout(function () {
  parent.layer.close(index); // 關(guān)閉layer
},500);

我還需要在關(guān)閉父類窗口后再打開一個窗口,則怎么解決,后面發(fā)現(xiàn)layer.js留有一個好的方式,那就是調(diào)用父窗口的方法,這個不受子窗口的影響,通過:parent.父類方法名(參數(shù))這樣就可以了,在父窗口中再調(diào)用layer.js的彈出就好了。

另:layui完整源碼可點擊此處本站下載。

希望本文所述對大家基于layui框架的程序設計有所幫助。

相關(guān)文章

  • javascript 原型繼承介紹

    javascript 原型繼承介紹

    最近接觸了一下html5,當然,接觸過html5的人都知道,html5也不過是提供一些新的標簽而已,至于整下實現(xiàn)的核心,還是在javascript這里。
    2011-08-08
  • 如何讓easyui gridview 寬度自適應窗口改變及fitColumns應用

    如何讓easyui gridview 寬度自適應窗口改變及fitColumns應用

    在使用Easyui GridView時,如果要Gridview的寬度和窗口的寬度相同,只需要設置fitColumns: true即可,感興趣的你不要走開啊,接下來為您詳細介紹
    2013-01-01
  • javascript css styleFloat和cssFloat

    javascript css styleFloat和cssFloat

    在寫js操作css的過程中發(fā)現(xiàn)float屬性在IE和firefox下對應的js腳本是不一樣的,IE下對應得是 styleFloat,firefox,chorme,safari下對應的是cssFloat,可用in運算符去檢測style是否包含此屬性。
    2010-03-03
  • 詳解微信小程序-canvas繪制文字實現(xiàn)自動換行

    詳解微信小程序-canvas繪制文字實現(xiàn)自動換行

    這篇文章主要介紹了微信小程序canvas繪制文字實現(xiàn)自動換行,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • js實現(xiàn)倒計時效果(小于10補零)

    js實現(xiàn)倒計時效果(小于10補零)

    本文主要介分享了js實現(xiàn)倒計時效果(小于10補零)的實例代碼,具有很好的參考價值。下面跟著小編一起來看下吧
    2017-03-03
  • Area 區(qū)域?qū)崿F(xiàn)post提交數(shù)據(jù)的js寫法

    Area 區(qū)域?qū)崿F(xiàn)post提交數(shù)據(jù)的js寫法

    這篇文章主要介紹了在Area區(qū)域的里 實現(xiàn)post 提交數(shù)據(jù) 的js寫法,需要的朋友可以參考下
    2014-04-04
  • js如何給json對象添加、刪除、修改屬性

    js如何給json對象添加、刪除、修改屬性

    這篇文章主要介紹了js如何給json對象添加、刪除、修改屬性問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • javascript圖片預加載實例分析

    javascript圖片預加載實例分析

    這篇文章主要介紹了javascript圖片預加載的方法,實例分析了javascript實現(xiàn)圖片預加載的方法與相關(guān)注意事項,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • 原生JavaScript實現(xiàn)的無縫滾動功能詳解

    原生JavaScript實現(xiàn)的無縫滾動功能詳解

    這篇文章主要介紹了原生JavaScript實現(xiàn)的無縫滾動功能,結(jié)合實例形式詳細分析了JavaScript無縫滾動具體實現(xiàn)步驟、相關(guān)操作技巧與注意事項,需要的朋友可以參考下
    2020-01-01
  • 30分鐘快速掌握Bootstrap框架

    30分鐘快速掌握Bootstrap框架

    Bootstrap 是一個用于快速開發(fā) Web 應用程序和網(wǎng)站的前端框架。接下來通過本文給大家介紹如何快速掌握Bootstrap,感興趣的朋友一起學習吧
    2016-05-05

最新評論