Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.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_Laravel 5_Magnific Popup_Magnification Api - Fatal编程技术网

Javascript 放大弹出窗口不使用动态添加的元素

Javascript 放大弹出窗口不使用动态添加的元素,javascript,laravel-5,magnific-popup,magnification-api,Javascript,Laravel 5,Magnific Popup,Magnification Api,我们正在使用放大库来显示我们网站上的弹出窗口。除了一件事,一切都进展顺利 当我们动态添加一个元素时,popup对动态添加的元素不起作用。您能否帮助我如何绑定动态添加元素的单击事件以显示弹出窗口?下面是我的代码: `<a id="del-vis-archive-new-{{$request->id}}" href="#delete-visitor-archive" data-id="{{$request->id}}" class="popup-form-delete-visito

我们正在使用放大库来显示我们网站上的弹出窗口。除了一件事,一切都进展顺利

当我们动态添加一个元素时,popup对动态添加的元素不起作用。您能否帮助我如何绑定动态添加元素的单击事件以显示弹出窗口?下面是我的代码:

`<a id="del-vis-archive-new-{{$request->id}}" href="#delete-visitor-archive" data-id="{{$request->id}}" class="popup-form-delete-visitor-archive" style="color:red;"><i style="color:red; text-align: right;" class="hi hi-trash"></i></a>

var PopupDelVisArchive = function() {
$('.popup-form-delete-visitor-archive').magnificPopup({
    type: 'inline',
    preloader: false,
    focus: '#name',
    callbacks: {
        open: function() {
            var dataId = $(this.st.el).attr('data-id');
            $("#btn").attr('data-id', dataId);
        }
    }
});
该类负责显示弹出窗口 但它不适用于动态添加的元素


换句话说,新添加的元素没有在DOM中注册click事件。

在DOM中加载每个新元素后,需要将弹出窗口绑定到每个新元素。这意味着调用
PopupDelVisArchiv()。

如果调用方法:
plugins.js:359 Uncaught TypeError:b.find不是m.fn.init上的函数,就会得到这个结果。(plugins.js:359)在Function.each(jquery-1.11.2.min.js:2)在o.\u parseMarkup(plugins.js:359)在o.getInline(plugins.js:359)在o.updateItemHTML(plugins.js:359)在o.\u openClick(plugins.js:359)在htmldevelment.c(plugins.js:359)在htmldevelment.dispatch(jquery-1.11.2.min.js:3)在在htmldevelment.r.handle(jquery-1.11.2.min.js:3)
I可能是因为您正在重新绑定到弹出窗口已经绑定到的元素。确保仅单独绑定到新元素。
$(document).on( 'init.dt, draw.dt', function ( e, settings ) {
    PopupDelVisArchiv();
});`