Javascript 在AJAX jQuery加载()之后运行jQuery代码
只有在代码1从外部页面加载了所有内容后,我才能运行下面的代码 已尝试使用jQuery脚本Javascript 在AJAX jQuery加载()之后运行jQuery代码,javascript,jquery,ajax,Javascript,Jquery,Ajax,只有在代码1从外部页面加载了所有内容后,我才能运行下面的代码 已尝试使用jQuery脚本 //filters $(window).bind("load", function() { $(".filters li").on("click", function () { id = ($(this).data("id")+'').split(','); filter = $(this).data("filter"); $("#hotel-list .box").hide
//filters
$(window).bind("load", function() {
$(".filters li").on("click", function () {
id = ($(this).data("id")+'').split(',');
filter = $(this).data("filter");
$("#hotel-list .box").hide();
id[0] == "all" && $("#hotel-list .box").show() || id.forEach(function(v){
$('#hotel-list .box[data-'+filter+'*="'+v.trim()+'"]').show();
});
return false;
});
<!-- Count Star Rating -->
var two_stars = $("article[data-stars*='2']").length;
var three_stars = $("article[data-stars*='3']").length;
var four_stars = $("article[data-stars*='4']").length;
var five_stars = $("article[data-stars*='5']").length;
$('.total-three').text(three_stars);
$('.total-four').text(four_stars);
$('.total-five').text(five_stars);
var totals = three_stars + four_stars + five_stars + two_stars;
$('.totals').text(totals);
<!-- Count Board -->
var board_no = $("article[data-board*='No']").length
var board_ro = $("article[data-board*='Room']").length
var board_bb = $("article[data-board*='Breakfast']").length;
var board_fb = $("article[data-board*='Full Board']").length
var board_hb = $("article[data-board*='Half']").length
var board_ai = $("article[data-board*='All']").length
var board_sc = $("article[data-board*='Self']").length
$('.total-ro').text(board_ro);
$('.total-bb').text(board_bb);
$('.total-fb').text(board_fb);
$('.total-hb').text(board_hb);
$('.total-ai').text(board_ai);
$('.total-sc').text(board_sc);
var total = board_ro + board_bb + board_fb + board_hb + board_ai + board_sc + board_no;
$('.total').text(total);
//Fix broken images
fixBrokenImages = function( url ){
var img = document.getElementsByTagName('img');
var i=0, l=img.length;
for(;i<l;i++){
var t = img[i];
if(t.naturalWidth === 0){
//this image is broken
t.src = url;
}
}
}
window.onload = function() {
fixBrokenImages('images/noimg.png');
}
});
因此,我需要第一个代码只在第二个代码完成其工作后执行(从3到9秒)
有什么想法吗
function runThisAfter() {
var two_stars = $("article[data-stars*='2']").length;
var three_stars = $("article[data-stars*='3']").length;
var four_stars = $("article[data-stars*='4']").length;
var five_stars = $("article[data-stars*='5']").length;
//etc...
}
$("#hotel-list").load("Rezults2.php", function(){ runThisAfter(); });
加载完成后,将运行“runThisAfter()”。解决方案是:
$(document).ajaxComplete(function( event, xhr, settings ) {
// Your complete function here
});
或者在我的情况下,完整代码:
$(document).ajaxComplete(function(event, xhr, settings) {
//Count STARS
var two_stars = $("article[data-stars*='2']").length;
var three_stars = $("article[data-stars*='3']").length;
var four_stars = $("article[data-stars*='4']").length;
var five_stars = $("article[data-stars*='5']").length;
$('.total-three').text(three_stars);
$('.total-four').text(four_stars);
$('.total-five').text(five_stars);
var totals = three_stars + four_stars + five_stars +
two_stars;
$('.totals').text(totals);
//COUNT BOARD
var board_no = $("article[data-board*='No']").length
var board_ro = $("article[data-board*='Room']").length
var board_bb = $("article[data-board*='Breakfast']").length;
var board_fb = $("article[data-board*='Full Board']").length
var board_hb = $("article[data-board*='Half']").length
var board_ai = $("article[data-board*='All']").length
var board_sc = $("article[data-board*='Self']").length
$('.total-ro').text(board_ro);
$('.total-bb').text(board_bb);
$('.total-fb').text(board_fb);
$('.total-hb').text(board_hb);
$('.total-ai').text(board_ai);
$('.total-sc').text(board_sc);
var total = board_ro + board_bb + board_fb + board_hb +
board_ai + board_sc + board_no;
$('.total').text(total);
//Fix broken images
fixBrokenImages = function(url) {
var img = document.getElementsByTagName('img');
var i = 0,
l = img.length;
for (; i < l; i++) {
var t = img[i];
if (t.naturalWidth === 0) {
//this image is broken
t.src = url;
}
}
}
window.onload = function() {
fixBrokenImages('images/noimg.png');
}
});
});
$(文档).ajaxComplete(函数(事件、xhr、设置){
//数星星
var two_stars=$(“文章[数据星*='2']”)长度;
var三颗星=$(“文章[数据星*='3']);
var四颗星=$(“文章[数据星*='4']);
var five_stars=$(“文章[数据星*='5'])。长度;
$('共三').text(三颗星);
$('共四').text(四颗星);
$('共五').text(五颗星);
var总计=三颗星+四颗星+五颗星+
两颗星;
$(“.totals”).text(总计);
//计数板
var board_no=$(“文章[数据板*='no'])。长度
var board_ro=$(“文章[数据板*='Room'])。长度
var board_bb=$(“文章[数据板*='早餐]”)。长度;
var board_fb=$(“文章[数据板*='Full board'])。长度
var board_hb=$(“文章[数据板*='Half'])。长度
var board_ai=$(“文章[数据板*='All'])。长度
var board_sc=$(“文章[数据板*='Self'])。长度
$('total ro')。文本(board_ro);
$('total bb')。文本(board_bb);
$('total fb').text(board_fb);
$('total hb')。文本(board_hb);
$('total ai').text(board_ai);
$('total sc')。文本(board_sc);
var总计=配电盘+配电盘bb+配电盘fb+配电盘hb+
单板ai+单板sc+单板编号;
$('.total').text(总计);
//修复损坏的图像
FixBrokerNimages=函数(url){
var img=document.getElementsByTagName('img');
var i=0,
l=img.长度;
对于(;i
在中使用load()函数的回调方法jquery@MarsOne你是seroius吗?$(“#hotel list”).load(“Rezults2.php”,function(){/*执行其他操作。*/})
你不能在JS@john-smith我在js代码包装中有html注释,它可以工作,谢谢,但是如果你检查代码,它会比加载做得更多。所以我需要有相同的函数。最终的代码取决于你。您的问题已经得到回答:在第一次调用完成后,使用回调功能添加代码。您可以将整个第一个脚本添加到“runThisAfter()”,但不需要也不需要使用“onLoad”和“load”,因为您希望在回调中加载它。
$(document).ajaxComplete(function(event, xhr, settings) {
//Count STARS
var two_stars = $("article[data-stars*='2']").length;
var three_stars = $("article[data-stars*='3']").length;
var four_stars = $("article[data-stars*='4']").length;
var five_stars = $("article[data-stars*='5']").length;
$('.total-three').text(three_stars);
$('.total-four').text(four_stars);
$('.total-five').text(five_stars);
var totals = three_stars + four_stars + five_stars +
two_stars;
$('.totals').text(totals);
//COUNT BOARD
var board_no = $("article[data-board*='No']").length
var board_ro = $("article[data-board*='Room']").length
var board_bb = $("article[data-board*='Breakfast']").length;
var board_fb = $("article[data-board*='Full Board']").length
var board_hb = $("article[data-board*='Half']").length
var board_ai = $("article[data-board*='All']").length
var board_sc = $("article[data-board*='Self']").length
$('.total-ro').text(board_ro);
$('.total-bb').text(board_bb);
$('.total-fb').text(board_fb);
$('.total-hb').text(board_hb);
$('.total-ai').text(board_ai);
$('.total-sc').text(board_sc);
var total = board_ro + board_bb + board_fb + board_hb +
board_ai + board_sc + board_no;
$('.total').text(total);
//Fix broken images
fixBrokenImages = function(url) {
var img = document.getElementsByTagName('img');
var i = 0,
l = img.length;
for (; i < l; i++) {
var t = img[i];
if (t.naturalWidth === 0) {
//this image is broken
t.src = url;
}
}
}
window.onload = function() {
fixBrokenImages('images/noimg.png');
}
});
});