javascript - Firefox 的foreignObject 中未触发事件

标签 javascript firefox svg mouseevent

尝试使用 svg 的foreignObject 创建一个复杂的菜单系统时,我发现了 Firefox 中的一个错误。当我的子菜单项超出了foreignObject 的容器大小时,我的mouseleave 事件 被触发。我做了一个更简单的例子来展示使用鼠标单击事件的问题。

在 Chrome 中浏览时没有问题,但在 Firefox(既不是最新版也不是测试版)中我无法触发它。有没有人以前见过这个问题,并且知道如何解决它?

jsFiddle here

HTML

<svg>
    <foreignObject width="100px" height="100px" style="overflow:visible">
        <div top=0px id="target" onclick='javascript:alert("hi");'></div>
        <div top=0px id="foborder" onclick='javascript:alert("hi");'></div>
    </foreignObject>
</svg>

CSS

svg #target {
    height: 300px;
    width: 300px;
    background: #dd0;
    position:absolute;
}
svg #foborder {
    height: 100px;
    width: 100px;
    border: 1px solid red;
    position:absolute;
}

最佳答案

这是 Firefox 中的一个错误,因此我将其标记为已解决

关于javascript - Firefox 的foreignObject 中未触发事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25972013/

相关文章:

javascript - 生成浏览器窗口截图

html - SVG 中的换行 g 元素

javascript - 是否可以在div(有id)中动态修改子元素(没有id)的样式?

css - Firefox 中的 SVG 无效属性值

html - 将 onclick 事件添加到 SVG 元素

javascript - 有没有办法使用 jQuery 提交 "fake"表单?

javascript - 用户手动滚动时突出显示 anchor 链接?

javascript - 视频元素控件上未触发单击事件

javascript - 使用偏移 KineticJS HTML5 从舞台保存图像

css - 如何查看内置的 Firefox 样式表?