我在另一个js文件中有一个加载事件,它使用.on(' load')在点击分页时加载新的HTML。但是,一旦html完成加载,我需要在另一个脚本中发生一些事情。到目前为止,我已经尝试过这个,但没有运气。 js-ajax-content-container是在新HTML中加载的元素。 js-ajax-link是我点击以启动加载事件的分页链接。
$('body').on('click', '.js-ajax-link', function() {
$('body').on('.js-ajax-content-container', 'ajaxComplete', function() {
alert("loaded");
});
});
答案 0 :(得分:2)
您可以在一个脚本中触发自定义事件,然后在另一个脚本中侦听它。
顺便说一下,on()
的论据顺序错误
首先传递事件名称,然后传递选择器。
$('body').on('click', '.js-ajax-link', function() {
$('body').on('ajaxComplete','.js-ajax-content-container', function() {
$(document).trigger('ajaxLinkLoaded');
});
});
在另一个脚本中,您可以收听此事件:
$(document).on('ajaxLinkLoaded', function(e){ // do something});