2011-04-14 3 views
0

다음 코드에서는 첫 번째 클릭 이벤트가 발생하지만 IE 9에서는 나머지 이벤트가 발생하지 않습니다. Chrome 및 Firefox (물론 IE 8)에서도 제대로 작동하지만 루트 노드 쇼를 클릭, IE9에서Raphaeljs Click 이벤트가 IE9에서 작동하지 않습니다.

$(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); 
     }); 
    } 

)를 테스트하지 않았습니다 [객체는 SVGImageElement] - 다른 노드는 이벤트가 발생하지 않습니다. 다른 브라우저에서는 모든 노드에 대해 동일한 (SVGImageElement)을 얻습니다.

+0

마지막 코드 커밋은 2010 년 8 월 26 일 이었으므로 IE9가 지원되지 않을 수도 있습니다. 느린 개발 속도가이 라이브러리의 가장 큰 관심사입니다. –

+0

마지막 코드 커밋은 2011 년 4 월 5 일이었습니다. –

답변

0

이것은보고있는 모든 사람들을위한 임시 해결 방법입니다. 정사각형, 원형 ​​또는 다른 벡터를 이미지 뒤에 놓고 그 위에 이벤트를 바인딩 할 수 있습니다.

IE9에서는 이미지 뒤에있는 모양을 클릭하여 작동합니다. 다른 모든 브라우저에서는 이미지 이벤트가 실행됩니다.

관련 문제