Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么不使用回调函数?_Javascript_Jquery_Json_Callback - Fatal编程技术网

Javascript 为什么不使用回调函数?

Javascript 为什么不使用回调函数?,javascript,jquery,json,callback,Javascript,Jquery,Json,Callback,下面是执行父事件的整个函数(使用json) function message_action(){ 函数醉酒(){ $(“div#box_message>div>div.slimScrollDiv>div>ul>li,div.messagePopup>div.nav>div.name>a,div.messagePopup>div.box>div.content>ul>li>div.message\u化身,div.messagePopup>div.box>div.content>ul.user>di

下面是执行父事件的整个函数(使用json)

function message_action(){
函数醉酒(){
$(“div#box_message>div>div.slimScrollDiv>div>ul>li,div.messagePopup>div.nav>div.name>a,div.messagePopup>div.box>div.content>ul>li>div.message\u化身,div.messagePopup>div.box>div.content>ul.user>div.message\u文本”).tipsy({
是的,
重力:“e”,
});
$(“div.messagePopup>div.box>div.content>ul>li.guy>div.message\u text”)({
是的,
重力:“w”,
});
}
醉酒的();
函数声音(){
if($((“audio.sounds通知”).length!=0){
$(“audio.sounds通知”).remove();
$.playSound_通知(“../data/sounds/notification”);
}否则{
$.playSound_通知(“../data/sounds/notification”);
}
}
功能视图(id){
var div=$(“div.messagePopup[data id=“+id+”]);
div.mouseover(函数(){
if(div.hasClass('see')==false){
$.post('../function/message',{view:id},function(){
div.addClass('see');
});
}
});
}
函数消息(){
$.post('../function/message',{message:'friend'},函数(数据){
var ul=$(“div#box_message>div#friend_message>div.slimScrollDiv>div.friend_box_content>ul”);
用于(数据中的var i){
行=数据[i];
追加(getCode(rows.avatar\u img,rows.fullname,rows.guy\u id,rows.username));
醉酒的();
}
open();
搜索();
}“json”);
函数搜索(){
var input=$(“div#box_right>div#box_message>div#option#u message>div.search>input”);
input.keyup(函数(){
var关键字=input.val();
如果(关键字=“”){
$(“div#box#u right>div#box#u message>div#search#u message”).slideUp('fast');
$(“div#box#u right>div#box#u message>div#friend#message”)。向下滑动(“快速”);
}否则{
$(“div#box_right>div#box_message>div#search_message”)。向下滑动(“快速”);
$(“div#box#u right>div#box#u message>div#friend#u message”).slideUp('fast');
$.post('../function/message',{search:keyword},函数(数据){
控制台日志(数据);
var ul=$(“div#box#u right>div#box#u message>div#search#u message>div.slimScrollDiv>div>ul”);
ul.html(“”);
如果(数据!=''){
用于(数据中的var i){
var行=数据[i];
var li=ul.儿童(“li”);
如果(li.length==0){
追加(getCode(rows.avatar\u img,rows.fullname,rows.guy\u id,rows.username));
}否则{
li.after(getCode(rows.avatar\u img,rows.fullname,rows.guy\u id,rows.username));
}
open();
}
}否则{
html(“
  • '+全名+”
  • ”; 返回码; } } 消息(); 函数open(){ var li=$(“div#box_message>div>div.slimScrollDiv>div>ul>li”); li.单击(函数(){ var id=$(this.attr('data-id'); 弹出窗口(id); }); } 功能弹出窗口(id){ var div=$(“div.messagePopup[data id='“+id+'”]); 如果(div.length==0){ $.post('../function/message',{show:id},函数(数据){ 控制台日志(数据); 如果(data.view=='see'){ div.addClass('see'); } }“json”); 代码=''+name+'
      '; 美元(“giccos”)。在(代码)之后; var div=$(“div.messagePopup[data id='“+id+'”]); $(“div.messagePopup[data id=”“+id+”]>div.nav>div.name”).append(“”); div.addClass(“新”); var div_new=$(“div.messagePopup[data id='“+id+”].new”); div_new.message(); 获取数据(id,,,,,,,,false); 身份证号码,30000; 负载(id); 支票(身份证); 职位(id); 视图(id); div_new.removeClass(“新”); } } 函数newPopup(){ setTimeout(函数(){ $.post('../function/message',{check:'},函数(数据){ 控制台日志(数据); 用于(数据中的var i){ var行=数据[i]; var id=rows.user\u id; var div=$(“div.messagePopup”); if(id!=null&&div.length==0){ 弹出窗口(id); 声音(); } } }“json”); newPopup(); },'6000'); } newPopup(); 函数getData(id、类型、消息id、超时、通知){ $.post('../function/message',{data:id,type:type,message\u id:message\u id},函数(data){ 控制台日志(数据); var popup=$(“div.messagePopup[data id='“+id+'”]); var div=$(“div.messagePopup[data id='”+id+']>div.box>div.content”); var ul=部门儿童(“ul”); 用于(数据中的var i){ var行=数据[i]; 如果(类型=='old'){ var ulHeight_old=ul.height(); ul.children('li[message id=“”+message_id+”)。在(getCode(rows.avatar_img,rows.content,rows.message_id,rows.time,rows.user,'))之前; ulHeight=ul.height(); 分区滚动顶部(超高)-
      function message_action(){
          function tipsy(){
              $("div#box_message > div > div.slimScrollDiv > div > ul > li, div.messagePopup > div.nav > div.name > a, div.messagePopup > div.box > div.content > ul > li > div.message_avatar, div.messagePopup > div.box > div.content > ul > li.user > div.message_text").tipsy({
                  html: true,
                  gravity: 'e',
              });
              $("div.messagePopup > div.box > div.content > ul > li.guy > div.message_text").tipsy({
                  html: true,
                  gravity: 'w',
              });
          }
          tipsy();
          function sound(){
              if($("audio.sounds-notification").length != 0){
                  $("audio.sounds-notification").remove();
                  $.playSound_notification('../data/sounds/notification');
              }else {
                  $.playSound_notification('../data/sounds/notification');
              }
          }
          function view(id){
              var div = $("div.messagePopup[data-id="+id+"]");
              div.mouseover(function(){
                  if(div.hasClass('see') == false){
                      $.post('../function/message',{view:id},function(){
                          div.addClass('see');
                      });
                  }
              });
          }
          function message(){
              $.post('../function/message',{message:'friend'},function(data){
                  var ul = $("div#box_message > div#friend_message > div.slimScrollDiv > div.friend_box_content > ul");
                  for(var i in data){
                      rows = data[i];
                      ul.append(getCode(rows.avatar_img, rows.fullname, rows.guy_id, rows.username));
                      tipsy();
                  }
                  open();
                  search();
              },'json');
              function search(){
                  var input = $("div#box_right > div#box_message > div#option_message > div.search > input");
                  input.keyup(function(){
                      var keyword = input.val();
                      if(keyword == ''){
                          $("div#box_right > div#box_message > div#search_message").slideUp('fast');
                          $("div#box_right > div#box_message > div#friend_message").slideDown('fast');
                      }else {
                          $("div#box_right > div#box_message > div#search_message").slideDown('fast');
                          $("div#box_right > div#box_message > div#friend_message").slideUp('fast');
                          $.post('../function/message',{search:keyword},function(data){
                              console.log(data);
                              var ul = $("div#box_right > div#box_message > div#search_message > div.slimScrollDiv > div > ul");
                              ul.html('');
                              if(data != ''){
                                  for(var i in data){
                                      var rows = data[i];
                                      var li = ul.children('li');
                                      if(li.length == 0){
                                          ul.append(getCode(rows.avatar_img, rows.fullname, rows.guy_id, rows.username));
                                      }else {
                                          li.after(getCode(rows.avatar_img, rows.fullname, rows.guy_id, rows.username));
                                      }
                                      open();
                                  }
                              }else {
                                  ul.html("<li class='note_nodata'><a>Không tìm thấy người này</a></li>");
                              }
                          },'json');
                      }
                  });
              }
              function getCode(avatar_img, fullname, guy_id, username){
                  code = '<li data-id="'+guy_id+'" class="east" quick-title="@'+username+'"><div class="avatar"><a href="../wall/'+username+'" style="background-image: url('+avatar_img+');"></a></div><div class="name" style="border-color: transparent"><a>'+fullname+'</a></div></li>';
                  return code;
              }
          }
          message();
          function open(){
              var li = $("div#box_message > div > div.slimScrollDiv > div > ul > li");
              li.click(function(){
                  var id = $(this).attr('data-id');
                  popup(id);
              });
          }
          function popup(id){
              var div = $("div.messagePopup[data-id='"+id+"']");
              if(div.length == 0){
                  $.post('../function/message',{show:id},function(data){
                      console.log(data);
                      if(data.view == 'see'){
                          div.addClass('see');
                      }
                  },'json');
                  code = '<div class="messagePopup" data-id="'+id+'"><div class="nav"><div class="name"><a>'+name+'</a></div><div class="button"><div class="close"><a></a></div></div></div><div class="box"><div class="content"><ul></ul></div><div class="type"><textarea type="text" placeholder="Viết tin nhắn"></textarea></div></div></div>';
                  $("div#giccos").after(code);
                  var div = $("div.messagePopup[data-id='"+id+"']");
                  $("div.messagePopup[data-id='"+id+"'] > div.nav > div.name").append('<div id="loading" class="loading_data_w" style="width: 20px;display: inline-block;vertical-align: top;margin-top: 10px;margin-left: 6px;"><i></i></div>');
                  div.addClass('new');
                  var div_new = $("div.messagePopup[data-id='"+id+"'].new");
                  div_new.message();
                  getData(id,'','','','false');
                  status(id,'',30000);
                  load(id);
                  check(id);
                  post(id);
                  view(id);
                  div_new.removeClass('new');
              }
          }
          function newPopup(){
              setTimeout(function(){
                  $.post('../function/message',{check:''},function(data){
                      console.log(data);
                      for(var i in data){
                          var rows = data[i];
                          var id = rows.user_id;
                          var div = $("div.messagePopup");
                          if(id != null && div.length == 0){
                              popup(id);
                              sound();
                          }
                      }
                  },'json');
                  newPopup();
              },'6000');
          }
          newPopup();
          function getData(id,type,message_id,timeout,notification){
              $.post('../function/message',{data:id,type:type,message_id:message_id},function(data){
                  console.log(data);
                  var popup = $("div.messagePopup[data-id='"+id+"']");
                  var div = $("div.messagePopup[data-id='"+id+"'] > div.box > div.content");
                  var ul = div.children('ul');
                  for(var i in data){
                      var rows = data[i];
                      if(type == 'old'){
                          var ulHeight_old = ul.height();
                          ul.children('li[message-id="'+message_id+'"]').before(getCode(rows.avatar_img, rows.content, rows.message_id, rows.time, rows.user, ''));
                          ulHeight = ul.height();
                          div.scrollTop(ulHeight - ulHeight_old);
                      }if(type == 'new'){
                          ul.append(getCode(rows.avatar_img, rows.content, rows.message_id, rows.time, rows.user, ' new'));
                          ulHeight = ul.height();
                          div.scrollTop(ulHeight);
                          ul.children('li.new').fadeOut(function(){
                              $(this).fadeIn().removeClass('new');
                          });
                          popup.removeClass('see');
                      }else if(type == ''){
                          ul.append(getCode(rows.avatar_img, rows.content, rows.message_id, rows.time, rows.user, ''));
                          ulHeight = ul.height();
                          div.scrollTop(ulHeight);
                      }
                      tipsy();
                      if(notification == 'true'){
                          sound();
                      }
                  }
                  $("div.messagePopup[data-id='"+id+"'] > div.nav > div.name > div#loading").fadeOut(function(){
                      $(this).remove();
                  });
                  if(type == 'old' && data == null){
                      div.addClass('null');
                      ul.children('div#loading').slideUp(function(){
                          $(this).remove();
                      });
                  }
              },'json');
              function getCode(avatar_img, content, message_id, time, user, type){
                  if(user == 'user'){
                      code = '<li class="user'+type+'" message-id="'+message_id+'"><div class="message_text east" quick-title="<span>Gửi lúc '+time+'</span>"><div>'+content+'</div><i></i></div></li>';
                  }else if(user == 'guy'){
                      code = '<li class="guy'+type+'" message-id="'+message_id+'"><div class="message_avatar"><img src="'+avatar_img+'" /></div><div class="message_text west" quick-title="<span>Gửi lúc '+time+'</span>"><i></i><div>'+content+'</div></div></li>';
                  }
                  return code;
              }
          }
          function status(id,color,timeout){
              $.post('../function/message',{status:id},function(data){
                  console.log(data);
                  var nav = $("div.messagePopup[data-id='"+id+"'] > div.nav");
                  var name = nav.children('div.name').children('a');
                  if(name.text() == ''){
                      name.text(data.name);
                  }
                  if(data.status == 'offline'){
                      nav.css('background-color','#75797C');
                  }else {
                      nav.css('background-color','#3A6A99');
                  }
              },'json');
              if(timeout != ''){
                  setTimeout(function(){
                      status(id,color,timeout);
                  },timeout);
              }
          }
          function load(id){
              var div = $("div.messagePopup[data-id='"+id+"'] > div.box > div.content");
              div.scroll(function(){
                  if($(this).scrollTop() == 0 && div.hasClass('null') == false){
                      var message_id = $("div.messagePopup[data-id='"+id+"'] > div.box > div.content > ul > li[message-id]:first").attr('message-id');
                      var loading = $("div.messagePopup[data-id='"+id+"'] > div.box > div.content > ul > div.loading_data_b");
                      if(loading.length == 0){
                          $('li[message-id="'+message_id+'"]').before('<div id="loading" class="loading_data_b" style="padding: 10px;"><i></i></div>');
                      }
                      getData(id,'old',message_id,'','false');
                  }
              });
          }
          function check(id){
              setTimeout(function(){
                  var div = $("div.messagePopup[data-id='"+id+"']");
                  if(div.length != 0){
                      var message_id = $("div.messagePopup[data-id='"+id+"'] > div.box > div.content > ul > li[message-id]:last").attr('message-id');
                      getData(id,'new',message_id,'','true');
                      check(id);
                  }
              },'4000');
          }
          function post(id){
              var input = $("div.messagePopup[data-id='"+id+"'] > div.box > div.type > textarea");
              $(input).keypress(function(event){
                  var keycode = (event.keyCode ? event.keyCode : event.which);
                  if(keycode == '13'){
                      var input = $(this);
                      var val = input.val();
                      var message_id = $("div.messagePopup[data-id='"+id+"'] > div.box > div.content > ul > li[message-id]:last").attr('message-id');
                      if(val != ''){
                          $.post('../function/message',{post:val,id:id,},function(data){
                              input.val('');
                              getData(id,'new',message_id,'','false');
                          });
                      }
                  }
              });
          }
      }
      message_action();