jQuery可拖动和透明PNG - 可拖动区域受到透明背景的阻碍

3

我有一堆图片,我正在应用 jQuery.draggable() 来拖动它们。

它们是透明的 PNG 图片,因此具有透明背景。问题在于,它们的背景被视为可拖动区域,因此如果一个元素位于背景中,则前景元素的透明背景会阻止背景元素被拖动。

以下是问题的一个示例

有什么解决办法吗?是否有任何方法让 jQuery 自动忽略图像的透明区域并仅将可见区域视为可拖动的手柄?


3
jQuery(或任何其他库)无法对此问题做出太多贡献。关于事件何时如何被触发的规则是由浏览器控制的。 - Pointy
嗯,你可以尝试使用图像映射。在某些情况下,它可能会起作用。 - kapa
@bažmegakapa:我确实考虑过图像映射,但是我的许多图片都是动态变化的,如果我能够以某种方式“忽略”图像的透明区域,那将是一种更加优雅的解决方案。 - Robert Hawkins
@RobertHawkins 那么这似乎不是那些特定情况之一 :). 也许是画布? - kapa
问题在于图像上的透明度不是一个洞,而是一个透明层,你点击的就是这个层。你已经明确指出它应该在顶部(由于z-index)。它正在按照预期工作,你无法做太多事情。抱歉。 - Mark Broadhurst
1个回答

2
这是可能的,而且一个jQuery插件在一段时间前就已经实现了。这里有一个演示(多个子层未启用,仍然有一些错误)。作者的演示网站已经关闭,但代码仍然可以在GitHub上获得。基于此构建并实现您的拖动功能。

1
感谢您注意到我的插件 :) 网站已经恢复在线,之前有一些服务器问题。同时,一个更加强化的版本已经上线几周了。 - Chris

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接