锁定卡布奇诺网络应用程序中的鼠标事件



在开发基于cappuccino框架的web应用程序时只需要在Chromium浏览器环境中运行(~ Chromium V.19于今年春季发布)我遇到了以下问题:

我们希望应用程序在几秒钟内锁定或删除所有鼠标点击(同时应用程序执行一些后台计算)。

这个看似简单的任务似乎几乎不可能完成。我们在整个屏幕上实现了Html-<div>层,并试图操纵它mouseup,mousedown处理程序,如:

onmouseup="return false">

onmousedown=";return false">

但没有显示任何结果。

同时迭代实际Cappuccino窗口视图的所有CPControl子视图并禁用

[子视图集启用:否];

并没有真正的帮助:

然后,子视图确实被禁用了(并且无法点击,这正是我们想要的)但为时已晚:尽管我们在开始后台任务之前禁用了它们,禁用效果在后台任务完成后生效,也是如此不能防止用户在合理计算期间进行愚蠢的点击。

我还尝试实现类似的代码

[CPRunLoop limitDateForMode:CPDefaultRunLoopMode];

在禁用CPControls之后和启动后台任务之前,但它也不起作用。

那么,有人对Javascript-/Html或卡布奇诺方面有想法吗?

CPWindow有一个方法:setIgnoresMouseEvents:只需在窗口上调用它。

相关内容

  • 没有找到相关文章

最新更新