从DOM中删除框架 - 有更好的方法吗?

时间:2015-11-04 13:50:11

标签: javascript jquery

关闭弹出窗口后,我正试图摆脱在后台播放的视频。现在我拥有的是:

jQuery(function(){
    jQuery('.slider-links .modalClick').on('click', function(event) {
        event.preventDefault();
        jQuery('#overlay')
            .fadeIn()
            .find('#modal')
            .fadeIn();
    });

    jQuery('#modal .close').on('click', function(event) {
        event.preventDefault();
        jQuery('#overlay')
            .fadeOut()
            .find('#modal')
            .remove();
    });
});

使用remove方法去除在后台播放的视频,但这并不是我想要的,因为这样它不允许再次点击链接,所以我的问题是;这样做有更好,更整洁的方法吗?觉得有点愚蠢地问这个,但我现在不知道在寻找答案的时候该找什么。

2 个答案:

答案 0 :(得分:1)

我会停止播放视频,fadeOut #modal

jQuery('#modal .close').on('click', function(event) {
    event.preventDefault();
    jQuery('#overlay')
        .fadeOut()
        .find('#modal')
        .fadeOut();
    $('#overlay video')[0].pause();
});

答案 1 :(得分:0)

你可以做的是在关闭模式时停止视频,如

jQuery(function ($) {
    $('.slider-links .modalClick').on('click', function (event) {
        event.preventDefault();
        $('#overlay')
            .fadeIn()
            .find('#modal')
            .fadeIn();
        $('#overlay video')[0].play();
    });

    $('#modal .close').on('click', function (event) {
        event.preventDefault();
        $('#overlay')
            .fadeOut()
            .find('#modal')
            .fadeOut();
        $('#overlay video')[0].stop();
    });
});