1
A
回答
1
您可以通过侦听mouseup或click事件,然后使用填充叠加技术来显示自定义上下文菜单来实现此目的。
事件侦听器的代码将如下所示。
// Listen for all mouseup events in the plugin.
// Where 'ge' is an instance of the GEPlugin
google.earth.addEventListener(ge.getWindow(), 'mouseup', eventHandler);
事件处理程序将类似于以下内容。
// Handles mouseup events (e is a KmlMouseEvent)
var eventHandler = function(e)
{
// if it is a right-click
if (e && e.getButton() == 2)
{
event.preventDefault(); // optional, depending on your requirements
event.stopPropagation(); // optional, depending on your requirements
openMenu(e.getScreenX(), e.getScreenY());
}
}
最后,打开自定义菜单的代码将如下所示。
// Insert a custom iframe at the x, y screen position
var openMenu = function(x, y)
{
var iframe = document.createElement('iframe');
iframe.frameBorder = 0;
iframe.scrolling = 'no';
iframe.style.position = 'absolute';
// build the menu as you require...
// then position and show it.
iframe.style.left = x + 'px';
iframe.style.top = y + 'px'; // you may want to offset the position...
document.body.appendChild(iframe); // show the menu
}
很明显,您在菜单中放入的内容以及样式取决于您。你也可能想要隐藏它,这只是一个删除iframe的情况 - 可能在另一个菜单项上的监听器(例如,当你点击菜单项时菜单消失)
如果你在这里被卡住是与事件合作的重要参考。 https://developers.google.com/earth/documentation/events
而且,这里是iframe的垫片技术的工作示例: http://earth-api-samples.googlecode.com/svn/trunk/demos/customcontrols/index.html
1
当前,您需要使用IFRAME SHIMS。希望这将改变一天。
看看这个页面了一种通过使用iframe垫片为例 http://earth-api-samples.googlecode.com/svn/trunk/demos/customcontrols/index.html
,并检查了这等问题上的SO更多的一些信息 How can I place a html div over the Google Earth plugin? Involves wmode, I imagine
如果你有兴趣,你可以看到我的网页google earth http://www.3dwhistler.com/
相关问题
- 1. geckofx的Google地球插件
- 2. jQuery的上下文菜单插件
- 3. 而使用上下文菜单插件
- 4. 如何在上下文菜单中过滤菜单jquery插件
- 5. Google Chrome上下文菜单的
- 6. 适用于Android的Google地球插件
- 7. Google地球插件中的CSS
- 8. JavaScript扩展NPObject(Google地球插件API)
- 9. 点击Google地球插件崩溃
- 10. AIR(FLEX)和Google地球插件API
- 11. 如果没有Google地球插件,请加载“Google地图”
- 12. Google地球插件:在单个.kmz中切换图层?
- 13. jQuery - 左键单击上下文菜单插件
- 14. 上下文菜单
- 15. 命名下拉菜单 - Google地图
- 16. Jenkins插件下拉菜单
- 17. GTK:定位上下文菜单项w.r.t上下文菜单
- 18. Google地球或Google地图?
- 19. 使用Superfish插件进行上下文菜单
- 20. 包资源管理器URI eclipse插件上下文菜单?
- 21. 用c#添加到office插件的上下文菜单#
- 22. Leopard操作系统的上下文菜单插件
- 23. 用于上下文菜单的jQuery插件
- 24. 如何为Eclipse插件制作动态上下文菜单?
- 25. Google地球插件API - 如何获取当前地图比例?
- 26. 地铁应用程序中的Google地球插件
- 27. C#上下文菜单延迟事件
- 28. 上下文菜单中的WinForm控件
- 29. 上下文菜单itemselect事件
- 30. 在Outlook 2010中有条件地添加上下文菜单项
我发现你回答之前使用这种技术,但你的回答是几乎完全一样我的实现。我没有使用左侧和顶部的'px',这是必要的吗?感谢您的答复弗雷泽! – goodwince 2012-04-03 20:43:56
好东西......是的,左边和上边的定义是“自动|长度|%|继承”。明确添加长度单位是一个非常好的主意,因为它消除了您是否想要像素或百分比的任何歧义。一些浏览器需要单位(FireFox),一些会默认为像素(IE),其他的则会做其他事情。如果你打算像素,然后使用它们。 – Fraser 2012-04-08 15:42:18
Doh!你是对的!!我完全忘记了像素与百分比。这种简单的事情很容易被人遗忘。再次感谢。 – goodwince 2012-04-08 19:56:26