2012-06-05 3 views
0

버튼을 클릭하면 숨겨진 이미지가 표시됩니다. 내가 가지고있는 문제는 (지금) 배경이 희미 해지거나 검게되기를 바라는 것이며, 현재 일어나고있는 일은 보이는 이미지를 포함하여 모든 것이 희미해진다는 것입니다. 배경 만 페이드 아웃

show hidden image

어떻게에만 배경을 페이드 아웃하는 방법?

<div id="chart" style="text-align: center;display:none;position:fixed;z-index:-100;"> 
    <img src="/donor-radar-chart?radar=%5B%5B%22W.Feather%22%2C0%2C26635692%2C240660%5D%2C%5B%22Jesterium%22%2C6%2C26297636%2C668476%5D%2C%5B%22OCFthanks%5BH%5D%22%2C6%2C19286508%2C8442507%5D%2C%5B%22wyluliraven%22%2C11%2C23246906%2C2486642%5D%2C%5B%22Quisarious%22%2C21%2C15048498%2C4027046%5D%2C%5B%22Breeze%22%2C22%2C23116432%2C1369416%5D%2C%5B%22Filter%22%2C40%2C27698092%2C54722%5D%2C%5B%22Axiomatic%22%2C70%2C16109511%2C1287889%5D%2C%5B%22DEJ915%22%2C80%2C21659570%2C677966%5D%2C%5B%22rIg0r_m0rTiS%22%2C84%2C29503180%2C1212%5D%2C%5B%22daggerhead%22%2C103%2C2553248%2C1880421%5D%5D" 
     width="640" height="300" class="imgChart" alt="Donor Radar Chart" 
     /> 
    </div> 

<div style="background-color: #fafafa;"> 
    <table class="radar" id="radar" width="100%"> 
     <thead> 
      <tr> 
       <th colspan="2">Overtake</th> 
       <th rowspan="3">Challenging Member</th> 
       <th colspan="10">Challenging Member Stats 
        <span> 
         <input type="button" value="Chart" onclick=" 
          var $body = $('body'); 
          var $chart = $('#chart'); 
          var left = Math.floor(($body.outerWidth() - 640)/2); 
          var top = Math.floor(($body.outerHeight() - 300)/2); 
          $body.fadeTo('fast', 0.5); 
          $chart 
           .css('left', left).css('top', top) 
           .css('z-index', '100').fadeTo('fast', 1); 
          $chart.on('click', function() { 
           $chart.fadeOut('fast'); 
           $body.fadeTo('fast', 1); 
          }); 
          "></span> 
        </th> 
       </tr> 

답변

5

간단합니다. 가장 쉬운 방법 : 먼저 -

$body.fadeTo('fast', 0.5); 

$body.fadeTo('fast', 1); 

둘째 밖으로 던져 - 요소 차트로 어떤 스타일을 추가 :

<div id="chart" style="text-align: center;display:none;position:fixed;z-index:-100; width: 100%; height: 100%; background: rgba(0,0,0,0.5); top: 0px; left: 0px;"> 
<img src="/donor-radar-chart?radar=%5B%5B%22W.Feather%22%2C0%2C26635692%2C240660%5D%2C%5B%22Jesterium%22%2C6%2C26297636%2C668476%5D%2C%5B%22OCFthanks%5BH%5D%22%2C6%2C19286508%2C8442507%5D%2C%5B%22wyluliraven%22%2C11%2C23246906%2C2486642%5D%2C%5B%22Quisarious%22%2C21%2C15048498%2C4027046%5D%2C%5B%22Breeze%22%2C22%2C23116432%2C1369416%5D%2C%5B%22Filter%22%2C40%2C27698092%2C54722%5D%2C%5B%22Axiomatic%22%2C70%2C16109511%2C1287889%5D%2C%5B%22DEJ915%22%2C80%2C21659570%2C677966%5D%2C%5B%22rIg0r_m0rTiS%22%2C84%2C29503180%2C1212%5D%2C%5B%22daggerhead%22%2C103%2C2553248%2C1880421%5D%5D" 
    width="640" height="300" class="imgChart" alt="Donor Radar Chart" 
    /> 
</div> 

이제 차트는 모든 화면 폭과 높이를 소요하고 차트 밑에 모든 것을 다루는 자신 만의 투명 배경을 가지고 있습니다. 도움이되기를 바랍니다.

+0

두 번째 방법은 완벽합니다. –

3

당신은 다른 하나의 색상에서 배경 색상을 전환 JQuery와 UI의 애니메이션을 사용할 수 있습니다

$("#radarDiv").toggle(function() { 
    $(this).animate({ backgroundColor: "white" }, 1000); 
},function() { 
    $(this).animate({ backgroundColor: "#fafafa" }, 500); 
}); 

또한 특정 테이블에 배경색을 설정해야 할 수도 있습니다.

관련 문제