Javascript 延迟函数直到jQuery.load完成
我有一个网站使用ajax加载主要内容,在Javascript 延迟函数直到jQuery.load完成,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有一个网站使用ajax加载主要内容,在.load()完成后,我使用以下代码运行函数(afterLoad) jQuery('.main-menu a').click(function(evt){ var href = jQuery(this).attr('href'); var elementClassName = jQuery(this).attr('class'); History.pushState({}, '', href);
.load()
完成后,我使用以下代码运行函数(afterLoad
)
jQuery('.main-menu a').click(function(evt){
var href = jQuery(this).attr('href');
var elementClassName = jQuery(this).attr('class');
History.pushState({}, '', href);
jQuery('.content').load(href+ ' #main',afterLoad);
function afterLoad() {
jQuery('.content').fadeIn(750);
if (document.location.pathname == "/works/") {
jQuery(function($){ window.dzsp_init("#port0",{
settings_slideshowTime:3
,settings_mode: "masonry"
,title: ""
,design_item_width: ""
,design_item_height: ""
,design_categories_style: "normal"
,design_categories_pos: "top"
,design_pageContent_pos: "top"
,settings_disableCats: "off"
,settings_lightboxlibrary: "zoombox"
,settings_preloadall: "off"
,audioplayer_swflocation: "http://sbmdesigns.net/wp-content/plugins/dzs-portfolio/ap.swf"
,videoplayer_swflocation: "http://sbmdesigns.net/wp-content/plugins/dzs-portfolio/preview.swf"
,disable_itemmeta: "off"
,settings_ajax_loadmoremethod: "button"
,settings_mode_masonry_layout: "masonry"
,design_total_height_full: "off"
,settings_mode_masonry_layout_straightacross_setitemsoncenter: "off"
,design_item_height_same_as_width : "off"})
});
}
}
return false;
});
一切正常,但有时
后加载
会在.load()
完成之前运行。是否需要延迟后加载
,以确保在启动之前加载完毕。在脚本末尾从jquery调用php函数
差不多
$.ajax({ url: 'script.php?argument=value&foo=bar' });
或
在函数中,检查参数是否存在,如果存在,请继续,否则跳过解决此问题是否顺利?我最终将函数放入外部文件,并在回调中调用.getscript
$('#result').load('ajax/test.php');