2013-02-04 3 views
1

그래서 나는 CSS 페이드 애니메이션을 가져 왔습니다. 여기에 홈페이지의 6 개 사각형 버튼 밖으로jQuery에서 li 요소 위로 마우스를 가져 가면 대상 범위가 어떻게됩니까

확인 : http://athenasweb.com

는 리튬의 UL 인증의 하나 위에 마우스를 올려 . 상자의 제목이 움직이는 파란색 영역입니다. 그러나 IE에서는 애니메이션없이 흰색으로 완전히 전환됩니다.

그래서 내가 해결하기 위해 jQuery를 (내가 jQuery를 멍청한 놈이야) 사용하려고 만

IE

<!--[if IE 9]> 
     <script> 
      $("ul#home_blocks li").hover(function(){$(this).next('span');.fadeOut(150);$(this).next('span');.fadeIn(300);}); 
     </script> 
<![endif]--> 
에서 그러나 아무런 영향

작품 아래에이 코드에! 그러나 그것은 전체 li 대신 스팬 위로 마우스를 가져 가면 작동합니다. 스팬을 제거하면 전체 블록이 내가하려는 것을 움직이지 않게됩니다.

<!--[if IE 9]> 
     <script> 
      $("ul#home_blocks li span").hover(function(){$(this).fadeOut(150);$(this).fadeIn(300);}); 
     </script> 
<![endif]--> 

오늘 오후에 어떤 조언이 있습니까? :) 여기

는 HTML & CSS입니다 :

<ul id="home_blocks"> 

     <li> 
      <a href="http://athenasweb.com/category/aspects/" title="Check out Weekly Aspects"><img class="blocks" src="<?php bloginfo("template_url"); ?>/images/block_aspects.jpg" alt="Weekly Aspects"/> 
      <span class="block_title">Weekly Aspects</span></a> 
     </li> 

     <li> 
      <a href="http://athenasweb.com/category/daily-planets/" title="Check out Daily Planets"><img class="blocks" src="<?php bloginfo("template_url"); ?>/images/block_planets.jpg" alt="Daily Planets"/> 
      <span class="block_title">Daily Planets</span></a> 
     </li> 

     <li> 
      <a href="http://athenasweb.com/category/column/" title="Read the Column"><img class="blocks" src="<?php bloginfo("template_url"); ?>/images/block_column.jpg" alt="Column"/> 
      <span class="block_title">Column</span></a> 
     </li> 

     <li> 
      <a href="http://www.athenasweb.com/astro101.html" title="Learn some Astrology"><img class="blocks" src="<?php bloginfo("template_url"); ?>/images/block_astrology.jpg" alt="Astrology 101"/> 
      <span class="block_title">Astrology 101</span></a> 
     </li> 

     <li> 
      <a href="http://www.athenasweb.com/athena.html" title="Learn about Athena"><img class="blocks" src="<?php bloginfo("template_url"); ?>/images/block_athena.jpg" alt="Athena"/> 
      <span class="block_title">Athena</span></a> 
     </li> 

     <li> 
      <a href="http://www.athenasweb.com/hitsIII.html" title="Learn some Mythology"><img class="blocks" src="<?php bloginfo("template_url"); ?>/images/block_mythology.jpg" alt="World Mythology"/> 
      <span class="block_title">World Mythology</span></a> 
     </li> 
    </ul>   

CSS :

#home_blocks   { position: relative; margin-top: 20px; list-style: none; } 
    #home_blocks li   { position: relative; display: block; float: left; margin: 0 15px 20px 0; width: 310px; height: 401px; border-bottom: 1px solid #4098db; text-align: center; font-family: 'Raleway', sans-serif; font-size: 25px; font-weight: 900; background: #4098db; 
    /*opacity: 1.0; 
    filter:alpha(opacity=100); */ 
    -webkit-transition: background .2s; -moz-transition: background .2s; -ms-transition: background .2s; transition: background .2s; } 
    #home_blocks a   { color: white; text-shadow: 0 1px 0 #666; } 
    #home_blocks li:nth-child(3n) { margin: 0 0 20px 0; } 
    #home_blocks li a  { -webkit-transition: color 1s; -moz-transition: color 1s; -ms-transition: color 1s; transition: color 1s; } 
    #home_blocks a:hover { color: #4098db; text-shadow: 0 1px 0 #ccc; cursor: pointer; } 
    #home_blocks li:hover { 
     background: white; border-bottom: 1px dotted #4098db; 
     /*opacity:0.95; filter:alpha(opacity=95); */ 
    } 
    .block_title   { display: block; position: absolute; bottom: 0px; left: 0; padding:25px 0 20px 0; width: 310px; z-index: 999; } 
    .blocks     { z-index: 1; } 
+0

질문의 일부로 관련 HTML 코드를 포함하십시오. –

+0

죄송합니다, HTML과 CSS가 추가되었습니다! –

+0

';'문을 닫고 모든 jQuery 메쏘드 사이에서 그것을 사용하기 때문에 무효화됩니다. – adeneo

답변

1

IE9에서 CSS3 전환이 작동하지 않기 때문입니다. 자신의 길을 구현하고 싶다면 IE에서 CSS 호버를 사용하지 않도록 처리해야합니다. 이는 좋은 생각이 아닙니다.

저는 css3transitions-jquery와 같은 크로스 브라우저 전환 라이브러리를 사용하는 것이 좋습니다.

http://addyosmani.com/blog/css3transitions-jquery/

+1

그 링크를 주셔서 감사합니다!) IE를 많이 싫어! 내가 실제로이 특정 프로젝트에 대한 IE에서 애니메이션을 잊을거야. 그리고 그들이 IE8 이하에 있다면 Chrome 또는 Firefox로 업그레이드 할 페이지를 사용자에게 표시합니다. –

0

항상 전체 <입니다 공중 선회 항목을 포함하는 JQuery와 이벤트 처리기에서 '이'키워드 li > 요소 그래서 귀하의 jQuery에서 선택기에서 스팬을 제거하십시오. 그런 다음 'animate'호출에서 $ (this) .filter ("span"). fadeOut (150)을 실행하여 범위 만 애니메이션으로 만듭니다.

+0

그냥 시도했지만 행운을 : ( –

관련 문제