本帖最后由 wei494989879 于 2014-11-03 02:15:21 编辑

解决方案 »

  1.   

    这样的问题。你最好搞个简短的代码,你这样描述,完全看不出来你想要干嘛的如果你这两个click事件是同一个按钮的动作,那就变成一个就行了。如果这是两个按钮的click动作,那就加个标志位或者啥的,在点击绑定异步的那个按钮时,改变这个标志位,当异步回调成功之后,再改回去。而另外一个按钮的动作,就判断这个标志位,根据不同的标志位的值,去判断是否需要执行click操作之后的逻辑。能看明白我的逻辑吗?
      

  2.   

    var getLastThree= function(){
           $.post('get_weibo.php',{},function(text){
    var json=eval('('+text+')');
    var html='';
    var jlen=json.length;
    for (var i=0;i<jlen;i++ ){
    var str=json[i].content;
    var re=/\[.*?\]/ig;

    if (re.test(str)==true){
    var im=str.match(re);
    for (var j=0;j<im.length ;j++ ){
    var aim=im[j].match(/[1-9]\d*\.?\d*/);
    str=str.replace(im[j],' <img src="'+'img/face/'+aim+'.gif'+'" />');
    } html+="<div class='weibo_box'><em>"+json[i].date+"</em><h2>"+json[i].username+"</h2><div class='weibo_cont'>"+str+"</div></div>"
       
    }

    }
        $('.weibo').html(html);
     })
     }
    上面是请求的函数,我在其他地方调用了的,下面就是出现问题的代码段了,这是发送表情的代码,每次点击表情框里面的表情发送的表情数量都在增加,而且在360浏览器先输入文字表情就发送不了了,把发送表情的click事件放外面又会出现DOM加载问题。怎么办呢
    $(function(){
    //表情
     var tip='表情';
     var on=true;
    $('.choice_ul li').eq(0).bind('click',function(){
      $('.biaoq').css('display','block');
      var table='<table cellspacing=0 cellpadding=0><tr>';
         if (on==true){
         for(var i=1; i<=75; i++){
      biaoq = '[/'+tip+i+']';
      table += '<td><img src="'+'img/face/'+i+'.gif" bq="'+biaoq+'"/></td>';
      if( i % 15 == 0 )table += '</tr><tr>';
                     }
                  table+='</tr></td>';
              $('.biaoq').append(table);
          }
         on=false;
               $('.biaoq img').bind('click',function(){
               var text=$(this).attr('bq');
               $('.text_box textarea').append(text);
                   
     
              });

            });
     
    })
      

  3.   

    先取消绑定事件再重新绑定,要不没点击一下 $('.choice_ul li')就给img绑定一次click事件累加起来了 $('.biaoq img').unbind('click').bind('click', function () {
                    var text = $(this).attr('bq');
                    $('.text_box textarea').append(text);
     });不懂你的dom结构怎么样的,最好的办法是在getLastThree中给未添加事件的img添加事件