Raphaeljs Click图像上的事件在IE9中不起作用

时间:2011-04-14 15:25:29

标签: jquery click internet-explorer-9 raphael

在下面的一段代码中,第一次点击事件会触发,但其余部分没有 - 在IE 9中。它在Chrome和Firefox中工作正常(显然IE 8 - 虽然我还没有测试过)

$(document).ready(function () {
    var d = paper.image("/Content/images/male.png", 100, 100, 32, 32);
    d.click(function (event) {
        alert(this.node);
    });

    $.each(hierarchy.children, function (index, value) {
        DrawNode(paper, value);
    });
})

function DrawNode(paper, currentPerson) {
     var currentNode = paper.image("/Content/images/male.png", currentPerson.X, currentPerson.Y, 32, 32).attr({ stroke: "none", fill: "none" });
     currentNode.click(function (event) {
         alert(this.node);
      });
    }

在IE9中,单击根节点会显示[object SVGImageElement] - 事件未触发的其他节点。在其他浏览器中,所有节点都获得相同的(SVGImageElement)

1 个答案:

答案 0 :(得分:0)

对于正在寻找的人来说,这是一个临时工作。您可以在图像后面放置方形,圆形或任何其他矢量,并将事件绑定到该图像。

在IE9中,它通过点击图像背后的形状来工作 - 在所有其他浏览器上,图像事件将被触发。