2014-03-26 4 views
0

나는 내 웹 페이지에서 프랑스의 SVG지도가 모든 지구 다각형의 onclick 내 코드SVG 변경 다각형 색상은 내가 지구를 색상 변경을 클릭하고 그 상태를 유지하면 내가 다시</p> <p>이 그것을 클릭 할 때까지하는 것이 필요

function init(evt) { 
    if (window.svgDocument == null) { 
     svgDoc = evt.target.ownerDocument; 
    } 

function update(district){ 
    $(this).find("path, polygon, circle").attr("fill", "#0d0");<- what is wrong 
    } 

이 내 다각형

<path id="14" d="M82.387,173.009L109.168,141h2.42l3.33-5.965l20.425,8.818l5.296,0.475l- 
1.876,31.861l5.236,7.5v8.018 l-15.6-1.701l 
0.273-3.599C128.127,186.407,99.635,180.95,82.387,173.009z" fill="#CCCCCC" 
onclick="update('14')"> 

당신이 임 문제가 내가 다각형 색상을 변경할 수 질수있는 온 클릭 이벤트를 받고 볼 수

중 하나입니다.

미리 감사드립니다.

+0

JSFiddle을 만드시겠습니까? –

+0

SVG 파일의 JSFiddle을 만드는 방법을 모르겠습니다. 문제는 간단합니다. 단지 다각형 경로의 색상을 변경하는 방법입니다. – notforever

+0

이 파일에 무엇이 들어 있는지 확인할 수 있습니까? 이것이 이미 경로 태그를 포함하고있을 가능성이 있습니다. 따라서 경로 태그에서 찾기를 수행하면 경로의 하위 항목을 찾고 아무 것도 찾을 수 없습니다 –

답변

2
  1. 이 내용을 확인하십시오. console.log (this)는 인생을 훨씬 더 쉽게 만들어 줄 것입니다.
  2. 저는 대답 할 것입니다. 이것은 함수가 호출 될 때 윈도우 객체를 가리킬 것입니다. 따라서 $ (this) .attr을 수행하면 윈도우 객체의 속성을 찾고 예상 한 객체의 속성을 찾지 않습니다.
  3. 함수에서 객체 ID를 전달 중이므로이를 사용하여 문서에서 요소를 찾을 수 있습니다.

    $('#'+ubicacion).attr("fill","blue") 
    

바이올린 here : 당신은 뭔가를 할 수 있습니다.

+0

아름답고, 간단하고, 고마워요. – notforever