块UI定位在页面上而不是屏幕上



我以前使用过这个插件,但现在块用户界面在页面上的位置不正确。在屏幕上,顶部有 40% 是可以的,但问题出在页面上。它一直滚动到顶部。

如果我在页面

的模组中有一个按钮,并且我单击它以启动块UI,则页面将爬回顶部。我不知道为什么

这是 HTML:

<div class="btn" id="block">
   <a href="#"><span>to buy tickets</span></a>
</div>
<div id="blockmsg">
  <a href="#" id="x"><img src="images/x.png" alt="x to close the window"/></a>
  <div class="blockmsg">
    <a href="#" class="hadran"><span>hadran.co.il</span></a>
    <a href="#" class="opera"><span>opera house</span></a>
    <div style="clear: both;height: 15px;"></div>
    <div class="btnhand">
      <a href="#"><span>join facebook</span></a>
    </div>
  </div>
</div>



CSS:

div.btn{
  width: 266px;
  margin: 0 auto;
  height: 56px;
}
#blockmsg{
  position: relative;
  padding-top: 30px;
  display: none;
  width: 400px;
  z-index: 100000;
}



jquery:

$('#block').click(function() { 
  $.blockUI({ 
      message: $('#blockmsg'), 
      fadeIn: 700,
      fadeOut: 700,
      centerX: true,
      centerY: true,
      css: { 
      backgroundColor: 'transparent',
      border: 'none',
      cursor: 'default'
    } 
  }); 
  $('#x').attr('title','Click to unblock').click($.unblockUI);
  //setTimeout($.unblockUI, 2000); 
});

尝试将return false;添加到单击处理程序的末尾,以防止浏览器在您单击链接时也执行默认操作,即转到# URL。

即将您的 jQuery 更改为:

$('#block').click(function() { 
  $.blockUI({ 
    // ... (same as before) 
  }); 
  $('#x').attr('title','Click to unblock').click($.unblockUI);
  return false;    
});

相关内容

  • 没有找到相关文章

最新更新