单击 Firefox 工具栏按钮中的坐标

Posted

技术标签:

【中文标题】单击 Firefox 工具栏按钮中的坐标【英文标题】:Click coordinates in Firefox toolbar button 【发布时间】:2012-07-31 09:22:28 【问题描述】:

我想从我的 Firefox 扩展中的工具栏图标获取点击坐标。

我使用的代码如下: //Toolbar code

<?xml version="1.0"?>                 
<overlay id="myext-toolbar-Overlay"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">

<?xml-stylesheet href="chrome://myext/skin/myextToolbarButton.css" type="text/css"?>

<script src="chrome://myext/content/myextExtension.js" type="application/x-javascript" />

<toolbarpalette id="BrowserToolbarPalette">
    <toolbarbutton id="myext-button" class="toolbarbutton-1"
      label="Button"
      tooltiptext="Clip Web Page"
      oncommand="myextExtension.showPopup(event);" >
    </toolbarbutton>
</toolbarpalette>

</overlay>

单击工具栏图标时会显示一个弹出窗口。我想在单击工具栏图标的位置显示弹出窗口。

【问题讨论】:

【参考方案1】:

command 事件不是鼠标事件,它可以通过不同的方式触发(鼠标和键盘是最常见的方式),因此您无法在此处获取鼠标位置。您可以为click 事件定义一个处理程序,记住event.screenX/event.screenY 并在您的command 事件处理程序中使用它们,然后如果它们可用。但最好将popup attribute 添加到您的按钮并让系统处理它。或者直接使用&lt;toolbarbutton type="menu"&gt;

【讨论】:

谢谢 :) 我采用了第一种方法。那就是为工具栏按钮定义一个单击处理程序并将坐标存储在那里。它似乎正在工作。但是,点击事件总是在命令事件触发之前出现吗? @quad_damage: 如果command 事件被鼠标触发 - 是的。

以上是关于单击 Firefox 工具栏按钮中的坐标的主要内容,如果未能解决你的问题,请参考以下文章

响应工具栏扩展按钮单击打开 xul 文件

在ACCESS 中,单击数据库窗口工具栏中的()按钮,即可在视图中打开相应的表。

如何查看Firefox中保存的登录密码

AUTOCAD——坐标标注

三角坐标系如何绘制

单击其他程序工具栏中的按钮