0
我們正在使用Magnific庫在我們的網站中顯示PopUps。除了一件事以外,所有這一切都進展順利。Magnific PopUp不能使用動態添加的元素
當我們動態地添加一個元素時,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);
}
}
});
}
$(document).on('init.dt, draw.dt', function (e, settings) {
PopupDelVisArchiv();
});`
類是負責顯示彈出 但它並不適用於動態添加的內容合作。
換句話說,點擊事件沒有在DOM中爲新添加的元素註冊。
我收到這個,如果我打電話的方法: 'plugins.js:359 Uncaught TypeError:b.find不是函數 在m.fn.init。在o.getInline(plugins.js:359)處的o._parseMarkup(plugins.js:359) 處的Function.each(jquery-1.11.2.min.js:2) ((plugins.js:359) ) 在o.updateItemHTML(plugins.js:359) 在開放(plugins.js:359) 在o._openClick(plugins.js:359) 在HTMLDivElement.c(plugins.js:359) 在HTMLDivElement。派遣(jquery-1.11.2.min.js:3) 在HTMLDivElement.r.handle(jquery-1.11.2.min.js:3)' –
MKJ
我可能是因爲你正在重新綁定到它已經彈出的元素已經綁定了。確保你只能單獨綁定新元素。 – btl