首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >可拖JS引导模式-性能问题

可拖JS引导模式-性能问题
EN

Stack Overflow用户
提问于 2013-04-08 14:05:06
回答 6查看 23.2K关注 0票数 9

对于一个正在工作的项目,我们在JavaScript中使用Bootstrap窗口。我们想让一些窗口可以移动,但是我们遇到了JQuery的性能问题。

代码语言:javascript
复制
$("#myModal").draggable({
    handle: ".modal-header"
});

示例

来源

在IE9中,它按预期工作。

在Chrome中,水平拖动按预期工作,垂直拖动非常慢,但没有问题。

在Firefox中,水平拖动可以像预期的那样工作,但是垂直拖动非常慢。

这很奇怪,因为示例窗口不太大,而且JQuery应该将浏览器行为正常化。我尝试不使用JQuery的可拖动性来解决这个问题,但遇到了同样的问题。

所以我有几个问题:

  • 缓慢的性能是浏览器、JQuery、引导程序的错误还是我的代码不是最优的?
  • 为什么水平拖和垂直拖有区别?
  • 我应该找到一个解决办法,还是干脆避免在动态弹出窗口中使用Bootstrap?

好样的,吉多

EN

Stack Overflow用户

发布于 2015-03-16 15:54:41

使用Bootstra3.3和jQuery UI 1.1,我将在元素中添加一个名为“”的类,并使用"modal“类。

它使用.modal-dialog类绑定到容器中的.modal-draggable元素(与这里绑定到实际容器的一些示例不同)。

有一些CSS,所以滚动长对话框仍然在所有屏幕大小的设备上工作。

CSS:

代码语言:javascript
复制
.modal-draggable .modal-backdrop {
  position: fixed;
}

.modal.modal-draggable {
    overflow: overflow-y;
}

.modal-draggable .modal-header:hover {
  cursor: move;
}

JavaScript:

代码语言:javascript
复制
$(".modal-draggable .modal-dialog").draggable({
  handle: ".modal-header"
});

参见这里的JS Fiddle以获得演示: http://jsfiddle.net/jcosnn6u/3/

注意:到目前为止,我只在Chrome、Firefox和Safari以及移动设备上测试了这一点,所以不能对Internet的兼容性发表评论。

票数 1
EN
查看全部 6 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15881245

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档