SlideUp Jquery用于模态弹出窗口

时间:2018-02-12 18:53:10

标签: javascript jquery modal-dialog popup

我创建了一个电子邮件订阅弹出模式。现在我将模态设置为淡入但不是我希望模态从页面底部向上滑动到顶部。我尝试了slideUp()而不是fadeIn(),但它不起作用。我觉得我错过了什么。我是否需要为slideUp()创建另一个函数?它是一个弹出模式,因此当窗口滚动而不是单击事件时它就准备好了。任何帮助表示赞赏。谢谢。我的代码如下。

$(document).scroll(function() {
    if (!$("#mc_embed_signup").data("userClosed")) {
        $(".popup-close").click(function(e) {
            closeSPopup(e);
        });

        var a = $(this).scrollTop();
        if (a > 400) {
            $("#mc_embed_signup").slideUp(600);
        }
    }
});

function closeSPopup(e) {
    e.preventDefault();
    $("#mc_embed_signup").data("userClosed", true);
    $("#mc_embed_signup").hide();
}

2 个答案:

答案 0 :(得分:1)

应该使用

.slideDown(),但是!..而不是在CSS中使用top: NN使用bottom: NN。这样,元素 “锚定” 到它的底部属性,而.slideDown()将从下到上执行!

var $popup = $("#popup");

$popup.slideDown();
#popup {
  position: absolute;
  transform: translate(-50%, 0);
  bottom: 24px;                   /* don't use top. Use bottom */
  left:50%;
  width: 300px;
  height: 160px;
  background:red;
  display: none;
}
<div id="popup">Popup ou yeah</div>

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

答案 1 :(得分:1)

jQuery DECLARE @sql NVARCHAR(MAX) = N''; SELECT @sql += N' ALTER TABLE ' + QUOTENAME(OBJECT_SCHEMA_NAME(parent_object_id)) + '.' + QUOTENAME(OBJECT_NAME(parent_object_id)) + ' DROP CONSTRAINT ' + QUOTENAME(name) + ';' FROM sys.objects WHERE type_desc LIKE '%CONSTRAINT' AND OBJECT_NAME(PARENT_OBJECT_ID) LIKE 'your_table_name'; EXEC sp_executesql @sql; 使用滑动动作隐藏匹配的元素。如果您想要弹出弹出窗口,可以使用.animate()

&#13;
&#13;
.slideUp()
&#13;
$("#popup").show().animate({top: (window.innerHeight / 2 - 50) + "px"}, 1000);
&#13;
#popup {
  display: none;
  width: 200px;
  height: 100px;
  position: fixed;
  top: 100%;
  left: calc(50% - 100px);
  background-color:cyan;
}
&#13;
&#13;
&#13;