【问题标题】:positioning popups on partial views在部分视图上定位弹出窗口
【发布时间】:2013-09-27 23:05:08
【问题描述】:

我有一个部分视图,我想将我的弹出/通知合并到其中。我想将这些通知放在两个“按钮”周围。但是,我实际上不确定如何在按钮周围放置这些弹出窗口。在文档示例中,它声明在应该出现弹出窗口的 href 中使用弹出 div 的 id。

示例:

<a href="#popupPadded" data-rel="popup" data-role="button">Popup with padding</a>

<div data-role="popup" id="popupPadded" class="ui-content">
  <p>This is a popup with the <code>ui-content</code> class added to the popup container.</p>
</div> 

但我的部分观点正在其他地方使用 href="#"。如何在局部视图中定位我的弹出窗口并在其他页面上重复使用它们?

这是我的局部视图的 HTML:

<a href="#" data-icon="GhCsStatus-Red"  data-position-to="origin"    data-inline="true" data-mini="true" data-role="button" id="GhCsStatus_CS" style="pointer-events: none;">CS</a>    
<a href="#" data-icon="GhCsStatus-Red"  data-position-to="origin"    data-inline="true" data-mini="true" data-role="button" id="GhCsStatus_GH" style="pointer-events: none;">GH</a>

<div id="GH_popup" data-role="popup">
<p> Get History is OFF! </p>
</div>

<div id="CS_popup" data-role="popup">
<p> Communication Service is OFF! </p>
</div>      

<div id="GHCS_popup" data-role="popup">
<p> Get History and Communication Service are OFF! </p>
</div> 

【问题讨论】:

  • 可以先获取按钮的x和y值(位置),然后打开弹窗$('#id').popup('open', { x: value, y: value});

标签: javascript jquery html jquery-mobile


【解决方案1】:

更新:

.offset() 将提供与.position() 不同的所需结果。


首先,您需要使用与您要打开的弹出窗口相关的.offset().position() 获取按钮的位置。

Demo - .offset()已更新

演示 - .position()

var x_pos = $("#btn_id").offset().left;
var y_pos = $("#btn_id").offset().top;

然后打开弹窗

$('#popup_id').popup('open', { x: x_pos, y: y_pos });

注意:一次只能打开一个弹出窗口。

【讨论】:

  • 我试试看!
  • @Liondancer 我添加了演示。
  • 我的按钮位于右下角,使用 jQuery mobile。我想知道我是否可以实现他们的定位属性。 api.jquerymobile.com/popup
  • @Liondancer 定位按钮或弹出窗口?
  • 你的想法是对的,但我无法理解这段代码,因为我是 CSS 新手 =/
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多