layer彈窗在鍵盤按回車將反復刷新


 

 
條件:彈窗后不做任何點擊操作或者聚焦操作
對於layer.load,彈出后反復按回車,load層將不斷刷新,即使設置了自動消失也只有等不按回車鍵才會生效。
對於layer iframe層有表單就更糟糕了,每按一次回車,iframe表單頁面將會被刷新,數據將會丟失。(這是form中存在input按回車會自動以form的method屬性方法提交表單,如果你在提交按鈕上設定了彈窗事件的話,將會直接提交,並且彈窗也被激發,出現錯誤)。
這似乎是打開iframe或彈窗后,鼠標的焦點出現了問題,鼠標的焦點還停留在激發窗口的控件上,每按一次回車,相當於反復彈窗,會在屏幕上疊很多層。
測試了一下,當彈窗后,點擊彈窗身體的任意部位后(不包括標題),再按回車鍵就不會出現bug了。
  • parent.document.onkeydown = function(e){    
    var ev =parent. document.all ? window.event : e;
    if(ev.keyCode==13) {
    $('#loginBtn').trigger("click");
    return false
    }
    }
    document.onkeydown = function(e){
    var ev =document.all ? window.event : e;
    if(ev.keyCode==13) {
    $('#loginBtn').trigger("click");
    return false
    }
    }
    我這個是用在彈出層頁面用的
    <input id="loginBtn" name="button" type="submit" value="登 錄" class="l_button" />
     

http://fly.layui.com/jie/14518/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM