jQuery Mobile弹出窗口并不总是有效

时间:2014-11-02 18:26:23

标签: javascript jquery json jquery-mobile popup

u here我上传了一个网站进行测试。
打开时单击albo,然后单击两个第一个名称以查看弹出窗口(仅在两个第一,因为它们是唯一设置的),而不是转到stats并滚动并单击在两个蓝色的名字(与以前相同的演讲,只有这些),一切正常 现在尝试浏览网站/页面,你可以看到并不总是弹出窗口工作!我尝试过几次,一切都有效,只有当你按照这个顺序按照页面进行操作时:albo - stats - story,并重复。通过这种方式,或多或少始终有效。
但这不好 为了实现这一点,我创建了一个函数,并在pagecreate索引

上调用它
$(document).on('pagecreate', '#splashpage', function(){
    valoripopup();
  });

这是function

function valoripopup(){
    var cognome, tennista;
    var bgpopup = $(".bg-popup");
    var close = $(".close");
    var popup = $(".single-tennista-container");
    $(".trigger-tennista").click(function(event){
      popup = $(this).closest(".single-page").find(".single-tennista-container");      
      bgpopup.removeClass("outsidepopup").addClass("insidepopup");
      $('html, body').on('touchmove', function(e){e.preventDefault();});
      cognome = $(this).attr("data-cognome");
      console.log(cognome);
      for(var i=0; i<players.all.length; i++){
        tennista = players.all[i];
        if (cognome == tennista.cognome){
            popup.empty().append(
            '<a href="#" data-rel="back"><img src="images/close.png" class="close"/></a>' + 
            '<div class="info-popup">' +
              '<div class="popup-name">' + tennista.nome +  '</div>' +
              '<div class="popup-cognome">' + tennista.cognome +  '</div>' + 
              '<div class="popup-generali">' + tennista.eta + ' anni - ' + tennista.nazionalita + ' - '  + tennista.mano + '</div>' + 
            '</div>' +
            '<div class="foto-popup"><img src="images/popup/'+ tennista.cognome + '.png" /></div>' + 
            '<div class="stat-popup">' + 
            '<div><span>'+ tennista.vittorie +'</span> <br> tornei <br>vinti</div>' +
            '<div><span>'+ tennista.finali +'</span> <br> finali <br>giocate </div>' +
            '<div><span>'+ tennista.partecipazioni +'</span> <br> volte <br>qualificato</div>' + 
            '</div>' 
            );
        }
      }     
    });
    close.popup("close");
    popup.popup({ positionTo: "window" });
    popup.popup({
        afterclose: function( event, ui ) {
            bgpopup.removeClass("insidepopup").addClass("outsidepopup");            
            $('html,body').unbind('touchmove');
        }
    });
  }

有没有人看到任何错误?
非常感谢!

更新


现在有效,但如果你使用浏览器的后退按钮转到上一页,那就不行了。
有什么想法吗?

0 个答案:

没有答案