Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 关闭模式问题_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 关闭模式问题

Javascript 关闭模式问题,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在使用以下代码打开我的Modal 模态按预期打开,并将open附加到父类。但是,单击“关闭”时,它不会关闭&close不会添加到类中 有人能解释一下原因吗 <script type="text/javascript"> jQuery(document).ready(function($) { $window = $(window) $(".modal-trigger").click(function(e) { e.preventDefault(

我正在使用以下代码打开我的Modal

模态按预期打开,并将
open
附加到父类。但是,单击“关闭”时,它不会关闭&
close
不会添加到类中

有人能解释一下原因吗

<script type="text/javascript">
jQuery(document).ready(function($) {

    $window = $(window)

    $(".modal-trigger").click(function(e) {
        e.preventDefault()

        var id = $(e.target).attr("href")

        $(id).addClass("open")

        $(id).find('.close').click(function(e) {
            e.preventDefault()
            $(e.target).parent().removeClass(".open")
        });

    })

});

</script>

jQuery(文档).ready(函数($){
$window=$(窗口)
$(“.modal触发器”)。单击(函数(e){
e、 预防默认值()
var id=$(e.target).attr(“href”)
$(id).addClass(“打开”)
$(id)。查找('.close')。单击(函数(e){
e、 预防默认值()
$(e.target).parent().removeClass(“.open”)
});
})
});
我的
关闭
按钮HTML

我不认为
parent()
能让你达到正确的水平。而是尝试从您首先添加此类的元素中删除
。open
类,即
$(id)


另外,您可能希望从“关闭”按钮取消绑定click事件,否则它将绑定多次。

阅读:
.removeClass('open')
。。。不需要点。分号放在哪里了?即使删除
也不能解决这个问题。不幸的是,这不起作用。我的控制台也没有错误。现在工作得很好-太棒了!请接受这个绿色的勾号和一个虚拟的拥抱*来自我:-)*可选:)很高兴我能帮忙!
$(".modal-trigger").click(function(e) {
    e.preventDefault();

    var id = $(e.target).attr("href");
    $(id).addClass("open");

    $(id).find('.close').click(function(e) {
        e.preventDefault();
        $(id).removeClass("open");
        $(this).off();
    });
});