【问题标题】:Bootstrap drop menu and jQuery Draggable bugBootstrap 下拉菜单和 jQuery Draggable 错误
【发布时间】:2012-10-30 16:23:13
【问题描述】:

我有一个 jQuery 可拖动 Div,里面有一个引导下拉菜单,这是我的 HTML:

<div id="widget_clock" class="widget_common ui-widget-content ui-corner-all ui-draggable" style="z-index: 1001; left: 651px; top: 0px; ">
<div>
    <div class="btn-group" style="float:right;text-align:left">
        <a class="btn btn-large" href="#" id="btn_SetAlarm"><em class="icon-time" style="margin-top: 4px;"></em>  Set Alarm</a>
        <a class="btn btn-large dropdown-toggle" data-toggle="dropdown" href="#"><span class="caret"></span></a>
        <ul class="dropdown-menu" id="alarm_recent_times">
            <li class="recent_times_header nav-header" style="padding-right:20px; padding-left:20px">No Recent times</li>
        </ul>
    </div>
</div>

正如您从 HTML 中看到的,我说的是 .dropdown-menu ul 标记。 在按下 &lt;div class="caret"&gt; 并打开下拉菜单(这是 bootstrapjs 功能)之前,一切看起来都很好,

在 bootstrapjs 菜单打开后再次拖动 DIV 时会出现该错误,并且菜单保持在其位置而不移动。有时它会回到 DIV,有时它只是静止不动。我无法解释为什么。

PS我可以提供我的网站地址以向人们展示我的问题吗?

【问题讨论】:

  • 你能用一个小的 jsfiddle 来解决你的问题吗?我无法使用简单的可拖动和引导菜单示例重新创建它:jsfiddle.net/mccannf/w6AsC/2

标签: jquery jquery-ui twitter-bootstrap


【解决方案1】:

除非您需要下拉菜单在拖动时保持打开状态,否则您应该可以通过在拖动时关闭下拉菜单来解决此问题。

$(".ui-draggable").draggable({
  start: function() {
    $('.ui-draggable .open').removeClass('open');
  }
});

您还可以使您的 div 在单击插入符号时不可拖动。

$(".ui-draggable").draggable({
  cancel: 'a.dropdown-toggle'
});

【讨论】:

  • 有趣,这正是我在阅读本文之前为解决它所做的 :-) 谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多