0

モーダルウィンドウを使用してログインを呼び出しています(Worpressではありますが、別のサービスへのログインです)。モーダルウィンドウを閉じるためのボタンを追加しようとしています - うまくいくように見えますが、そうではありません...アイデアはありますか?

使用しているjsは次のとおりです。

<script type="text/javascript">
function overlay() {
    el = document.getElementById("overlay");
    el.style.visibility = (el.style.visibility == "visible") ? "hidden" : "visible";
}
$(function(){// document.ready shorthand
    $('.close-btn').click(function() {
        $('#overlay,.login-popup').fadeOut('3000',function(){//use 3000 in place of 300m
            $('#overlay').remove();
        });    
        return false;
    });
});

</script>

閉じるボタンの html:

<a class="close-btn" href="#">Close</a>

そしてCSS:

#overlay {
 visibility: hidden;
 position: absolute;
 left: 0px;
 top: 0px;
 width:100%;
 height:100%;
 text-align:center;
 z-index: 1000;
 background-image:url(../background_trans.png);
 background-repeat:repeat;
}

#overlay_content {
 width:275px;
 width:19.64285714rem;
 margin: 100px auto;
 background-color: #ebf1e3;
 border:1px solid #ccc;
 padding:25px;
 text-align:left;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
line-height:175%;
}
4

1 に答える 1

0

オーバーレイremove()要素を使用しないでください。それを非表示にして null にvisibility:hidden設定.html()しますが、現在モーダル ウィンドウ内にあるものを消去したい場合のみです。

ソース: 私は最近似たようなことをしました (elements.js ソース コードを読み、グリッドを移動してモーダル ポップアップを開始します) ( http://fooscript.com/zombie/ )

モーダルをクリアするために使用したコードは次のとおりです

clearModal : function() {
    this.modal.innerHTML = null;
    this.triggerOverlay();
},
//when called, triggers the visibility of the overlay that disables the page
//modal window
triggerOverlay : function() {
    this.overlay.style.visibility = (this.overlay.style.visibility == "visible") ? "hidden" : "visible";
},
于 2014-02-24T22:57:44.793 に答える