5

我正在使用 TideSDK 开发我的第一个应用程序。我有一些类似工具栏的按钮,我希望它们在鼠标离开窗口时淡出。

不幸的是,看起来 TideSDK 没有触发mouseout或对象mouseleave上的事件window,我无法检测到它使用,因为当光标离开主应用程序窗口时mousemove显然不会触发事件。mousemove

Ti.UI.UserWindow我在 TideSDK 官方文档中没有找到任何与鼠标相关的事件。

有人有什么想法吗?
谢谢。

4

4 回答 4

2

我在 TideSDK 中遇到了同样的问题。在 Chrome 或 Firefox 上 window.onmouseleave 可以正常工作,但在 TideSDK(愚蠢的旧 Webkit)上却不行位置:例如固定),那么你写了这样的东西:

#wrapper:hover #myelement{
// some CSS
}
于 2013-05-29T13:02:02.517 回答
1

它会在其他对象上触发 mouseout 或 mouseleave 事件吗?您可以创建另一个与窗口大小相同的对象并将其放置在背景中。

于 2013-05-25T13:06:33.417 回答
0

一种可能的解决方法可能是使用计时器。每次计时器触发时,您都会检查鼠标的位置,如果它不在窗口范围内,请手动触发 mouseleave。

我在 TideSDK 方面经验不足,无法告诉您如何获取鼠标在屏幕上的位置,对此感到抱歉。

于 2013-06-01T10:30:09.977 回答
0

您不需要 TideSDK 来执行此操作,您只需使用 JavaScript 即可。

这是我在 jQuery 中所做的:

$(document).on("mouseenter", function() {
  return $("#side_bar_container").addClass("slide_in");
});

$(document).on("mouseleave", function() {
  $("#side_bar_container").removeClass("show_full_menu");
  $("#side_bar_container").removeClass("slide_in");
  return removeAllClasses("active", $(".show-archive"));
});

这适用于我当前的 TideSDK 应用程序和我正在测试的所有浏览器。

于 2013-08-28T10:19:01.783 回答