如何只调用一次ajax
发布时间:2020-12-16 03:07:45 所属栏目:百科 来源:网络整理
导读:我从这段代码调用函数: div id="header-button-news" class="header-button-info" a href="javascript:;" title="Новости" onclick="showNews()"/a div class="new"2/div /div 我的功能是 function showNews(){ //other js which show block jQuery(
我从这段代码调用函数:
<div id="header-button-news" class="header-button-info"> <a href="javascript:;" title="Новости" onclick="showNews()"></a> <div class="new">2</div> </div> 我的功能是 function showNews() { //other js which show block jQuery("#loader").show(); //ajax which load content to block jQuery.ajax({ type: "GET",url: link,dataType: "html",success: function(data) { jQuery('#top-info-news').html(data); },complete: function(){ jQuery('#loader').hide(); },}); } 我怎样才能进行一次ajax调用?所以当加载内容并且页面没有被刷新而不加载ajax时?我试图做布尔变量,但没有,我支持它是因为我每次调用函数.请告诉我怎么做. 谢谢
当你想在那个事件上做点什么的时候.
确定何时已加载数据. var loaded = false; function showNews() { //other js which show block jQuery("#loader").show(); if(loaded) return; //ajax which load content to block jQuery.ajax({ type: "GET",success: function(data) { jQuery('#top-info-news').html(data); },complete: function(){ jQuery('#loader').hide(); },}); loaded = true; } 或者使用一个.当你想打电话一次. <a href="javascript:;" title="Новости" onclick="showNews()" class="showNews"></a> jQuery('.showNews').one('click',function() { // your code }); “将处理程序附加到元素的事件.每个元素最多执行一次处理程序.” reference (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |