【问题标题】:JQuery Resize divJQuery 调整 div 大小
【发布时间】:2010-04-27 21:37:38
【问题描述】:

我想在单击时添加一个 div,并通过 mousedown 自动启动调整鼠标 ui 大小的功能。

我可以轻松添加 div,我可以轻松调整大小。但我不知道如何传递鼠标事件并绑定它们,以便立即开始调整大小。

想象一个类似绘画的程序,这样可以通过鼠标拖动来添加和绘制 div...?

非常感谢。

【问题讨论】:

标签: jquery jquery-ui resize resizable jquery-ui-resizable


【解决方案1】:

因为您的 div 是在绑定初始事件处理程序之后添加到 DOM 中的,所以 .bind() 不会对新元素起作用。 jQuery 有一个漂亮的 .live() 方法,它与 .bind() 做同样的事情,但作用于稍后添加到 DOM 的元素。

所以,你可以大致这样写:

$('.my_new_div').live('mousedown', my_resize_handler);

jQuery Live

编辑:还要看看新的 .delegate() 方法。与 .live() 非常相似,但效率更高。

【讨论】:

  • 谢谢,这是一个很好的提示。希望几周前我就知道“直播”
  • .live() 或 .delegate() 非常适合动态创建新内容和元素的丰富 UI。它不必为了附加事件处理程序而显式地重新绑定所有内容。
  • 这很有趣;但是,我想在一个看起来很活跃的项目上触发一个事件。如果我单击角落上的项目以调整大小,它就可以正常工作。我希望已经激活的 mousedown 成为调整大小的 mousedown,就好像我点击了角落一样。到目前为止,我确实很感谢您的帮助。
  • 快速更新:.on() 现在已取代 live() 和 delegate() 作为绑定事件处理程序的首选方法。
猜你喜欢
  • 2013-02-05
  • 2012-01-25
  • 2010-10-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-04
  • 2014-06-20
  • 1970-01-01
相关资源
最近更新 更多