2012-07-10 2 views
3

내 의사에게 작은 웹 앱을 만들고 있는데이 이미지의 서클을 클릭 할 수있게하고 싶습니다. 사용자가 하나를 클릭하면 색상이 변경됩니다. Jquery와 HTML 이미지 맵을 사용하여이 작업을 수행 할 것이라고 생각했지만 다른 사람에게이 작업을 수행하는 방법에 대한 아이디어가 있는지 알고 싶었습니다.자바 스크립트 및 HTML 이미지 맵

감사합니다. 당신은 원없이 동일하게 배경 이미지를 교체해야 http://jsfiddle.net/riateche/NTkmV/

:

Main Image

+1

당신이 HTML 이미지 맵에 대한 대안을 요구하거나 수행하는 방법에있어 그 HTML 이미지 지도? – jfrej

+0

다른 방법은 SVG에서 이것을 그리는 것입니다. 그래서 당신은 어떤 모양의 스타일 (선상에 포함)과 링크를 추가 할 수 있습니다. –

답변

3

내 구현을 참조하십시오. 원의 좌표 (및 선택적 반경)가있는 circles 배열을 채워야합니다. 4 개의 서클 만 추가했습니다.

HTML :

<div id="container"> 
    <img src="http://i.stack.imgur.com/cQdo2.png"> 
</div> 

CSS :

#container { position: relative; } 
.circle { 
    width: 10px; 
    height: 10px; 
    position: absolute; 
    border: 3px solid green; 
    border-radius: 100%; 
} 

.circle.on { 
    border-color: red; 
} 

자바 스크립트 : 그래서

var circles = [ 
    //each item contains x, y and optional size 
    [93, 81, 18], 
    [44, 173, 18], 
    [108, 69], 
    [134, 77] 
]; 

$(circles).each(function() { 
    console.log("ok"); 
    var obj = $("<div/>"); 
    obj.addClass("circle"); 
    obj.css("left", this[0]);  
    obj.css("top", this[1]); 
    if (this[2]) { 
    obj.width(this[2]); 
    obj.height(this[2]); 
    } 
    $("#container").append(obj); 
}); 

$(document).on("click", ".circle", function(e) { 
$(e.target).toggleClass("on"); 
}); 
+0

완벽하게 작동하는 와우! 서클에서 코디네이터를 찾기 위해 어떤 방법을 사용합니까? – Andrew

+0

PS 고마워요 !! – Andrew

+0

커서 아래에 점의 좌표를 가져 오기 위해 김프를 사용했습니다. 이 그래픽 편집기 나 다른 그래픽 편집기를 사용할 수 있습니다. –

관련 문제