jQuery在打開頁面時工作正常。但是,當產品通過AJAX加載(更改)時,jQuery不起作用。我已經使用jQuery的1.7.1.min.js當通過AJAX加載產品時,jQuery不起作用
$(document).ready(function() {
$screensize = $(window).width();
if ($screensize > 1199) {
$('#content .product-grid > div:nth-child(3n)').after('<span class="clearfix visible-lg-block"></span>');
}
if ($screensize < 1199) {
$('#content .product-grid > div:nth-child(3n)').after('<span class="clearfix visible-lg-block visible-md-block"></span>');
}
if ($screensize < 991) {
$('#content .product-grid > div:nth-child(3n)').after('<span class="clearfix visible-lg-block visible-sm-block"></span>');
}
});
我怎樣才能解決這個問題?
我試着下面的代碼。所以,它正在工作。但是,有時不起作用。
$(document).on('ajaxComplete ready', function(){
// FUNCTION CODE
});
你需要調用代碼段上'success' Ajax回調,一旦元素被添加到DOM:'$阿賈克斯({成功:resizeMethod,...});'而對文件準備撥打: '$(resizeMethod);'。其中'resizeMethod'是包裝你的片段的方法(減去準備好的hanlder) –
那麼,你的函數在文檔準備就緒時被調用。你必須在更改頁面時調用它 – wonderb0lt
@ A.Wolff我認爲你的意思是'$(document).ready(resizeMethod);''而不是'$(resizeMethod);' – RuubW