2015-06-11 82 views
4

我从AJAX调用的查询启动脚本时遇到问题。冲突的AJAX和JQuery脚本 - 无错

AJAX工作正常,并加载帖子,但它停止了“.jobs-button”能够运行所需的脚本。奇怪的是,如果我将此设置为AJAX外部称为查询块的另一个元素,则该脚本可以正常工作。

任何想法为什么“.jobs-button”不会在“hide/show”脚本中触发?

这里有一个演示柜面我的解释不明确:http://pixeldesigns.uk/ardour/jobs

这第一个脚本,是一个简单的“显示/隐藏”:

jQuery(".jobs-button").toggle(function() { 
    jQuery(".jobs-main").slideDown(500); 
    jQuery(".jobs-head") 
     .delay(500) 
     .queue(function() { 
      jQuery(this).removeClass("jobs-closed"); 
      jQuery(this).addClass("jobs-open"); 
      jQuery(this).dequeue(); 
     }); 

    jQuery(".fa-chevron-down") 
     .delay(500) 
     .queue(function() { 
      jQuery(this).removeClass("rotate"); 
      jQuery(this).addClass("rotated"); 
      jQuery(this).dequeue(); 
     }); 
    jQuery(".jobs-intro, .jobs-desc, .jobs-qual, .jobs-bul").delay(500).animate({ 
     'opacity': 1 
    }, 500); 
}, function() { 
    jQuery(".jobs-main").delay(500).slideUp(500); 
    jQuery(".jobs-head") 
     .delay(1000) 
     .queue(function() { 
      jQuery(this).addClass("jobs-closed"); 
      jQuery(this).removeClass("jobs-open"); 
      jQuery(this).dequeue(); 
     }); 

    jQuery(".fa-chevron-down") 
     .delay(1000) 
     .queue(function() { 
      jQuery(this).removeClass("rotated"); 
      jQuery(this).addClass("rotate"); 
      jQuery(this).dequeue(); 
     }); 

    jQuery(".jobs-intro, .jobs-desc, .jobs-qual, .jobs-bul").animate({ 
     'opacity': 0 
    }, 500); 
}); 

第二运行AJAX调用网页上的脚本加载和按钮单击它运行查询并带来正确的帖子:

jQuery(window).load(function() { 
    jQuery('#load').show(); 
    jQuery.ajax({ 
     url: "<?php echo get_stylesheet_directory_uri(); ?>/ajax/sales.php", 
     type: "get", 
     success: function (e) { 
      document.getElementById("tab-1").innerHTML = e; 
      jQuery('#load').hide(); 
     }, 
     error: function (e, t) { 
      e.status > 0 && (document.getElementById("tab-1").innerHTML = "Error: " + t); 
     } 
    }) 
}); 

jQuery("#tb-1").click(function() { 
    jQuery('#load').show(); 
    jQuery.ajax({ 
     url: "<?php echo get_stylesheet_directory_uri(); ?>/ajax/sales.php", 
     type: "get", 
     success: function (e) { 
      document.getElementById("tab-1").innerHTML = e; 
      jQuery('#load').hide(); 
     }, 
     error: function (e, t) { 
      e.status > 0 && (document.getElementById("tab-1").innerHTML = "Error: " + t); 
     } 
    }) 
}); 

回答

0

使用Firebug我拿起这段代码给出了一个错误,因为re不是元素“#flow”。也许这个代码在这个页面上不需要,因为它是流程图?

// Flow Chart 

      jQuery.ajax(jQuery(window).width()<989?{url:"http://pixeldesigns.uk/ardour/wp-content/themes/ardour/ajax/flow-small.php",type:"get",success:function(e){document.getElementById("flow").innerHTML=e},error:function(e,n){e.status>0&&(document.getElementById("flow").innerHTML="Error: "+n)}}:{url:"http://pixeldesigns.uk/ardour/wp-content/themes/ardour/ajax/flow-big.php",type:"get",success:function(e){document.getElementById("flow").innerHTML=e},error:function(e,n){e.status>0&&(document.getElementById("flow").innerHTML="Error: "+n)}});