2013-02-10 123 views
-2

編輯:修復:謝謝大家的幫助。.animate()適用於Firefox,Chrome和IE9,但不適用於IE10(Jquery 1.8.3和1.9.1)

原來,這個問題是在CSS代碼本孤兒行:

  • {過渡:所有0.2S易於; }

刪除此行解決了這一問題

原貼:

我10年的沉寂後已經剛剛開始編碼。我試圖讓一些代碼工作,從頁面的中間到頂部爲菜單設置動畫。它適用於Firefox,Chrome和IE9,但在IE10中被破壞。我已經嘗試了JQuery 1.6.3和1.9.2,但沒有解析。

編輯:菜單懸停在IE10中正常工作。斷開,我的意思是菜單在IE10中沒有動畫。 IE10中的控制檯沒有javascript錯誤。點擊確實在IE10中捕獲的很好,因爲window.location.href確實更改爲appointments.html。

段:

<header id="menubar" style="top: 496px; left: 80px; width: 1360px;"> 
    <ul id="surnav"> 
    <li class="menu-hover"> <a href= 
     "index.html">Home</a> </li> 
    <li id="appointments" class="menu-hover"> <a href= 
     "#">Appointments</a> <img src="norwood_files/snav-arrow.png" width="10" height="5" /> 
     <ul class="submenu"> 
     <li>Emergencies</li> 
     </ul> 
    </li> 
    </ul> 
</header> 

的JavaScript:

$(document).ready(function() { 

if (document.URL.indexOf("index.html") >= 0) { 
    $("#menubar").css("top", "496px"); 
    $(".menu-hover").on({ 
     click: function() { 
      $("#menubar").animate({ 
       top: '50px' 
      }, "easing:swing"); 
     }, 
     mouseenter: function() { 
      $(this).children(".submenu, img").fadeIn(250); 
     }, 
     mouseleave: function() { 
      $(this).children(".submenu, img").fadeOut(250); 
     } 
    }); 

    $("#appointments").on({ 
     click: function() { 
      $("#appointments-bkg").animate({ 
       top: '-14px' 
      }, "easing:swing", function() { 
       window.location.href = "appointments.html" 
      }); 
     } 
    }); 

    $("#financial").on({ 
     click: function() { 
      $("#financial-bkg").animate({ 
       top: '-14px' 
      }, "easing:swing", function() { 
       window.location.href = "financial.html" 
      }); 
     } 
    }); 
} 
}); 

謝謝!

+1

「破」是什麼意思,什麼是JavaScript錯誤? – Sparky 2013-02-10 18:29:40

+0

控制檯說什麼? – Mahn 2013-02-10 18:30:58

+0

沒有javascript錯誤。控制檯沒有錯誤 – 2013-02-10 18:34:14

回答

3

也許嘗試if(window.location.href.match(/index\.html/i)而不是if(document.URL.indexOf("index.html") >= 0)除此之外,考慮到所有其他瀏覽器都很好,我不明白爲什麼它不在IE10中工作。

+0

實際上,不是使用'string.match',而是使用'/regexp/.test(string)'。它速度更快,而且正是您所需要的。 最近,'window.location'對象被改變了,因爲我爲一個基於iframe的XDM登錄寫了一些代碼,由於window.location.hash()改變了它的行爲(可能在更新的版本的瀏覽器) – 2013-02-10 18:21:55

+0

謝謝我將用此更新代碼。但是,我知道,if語句在IE10中的子菜單淡出後正在觸發。這可能是Jquery中的一個錯誤嗎? – 2013-02-10 18:26:44

+0

感謝大家的幫助。 問題原來是在CSS代碼中的這個孤兒行: * {transition:all 0.2s ease; } 刪除此行解決了問題 – 2013-02-10 19:45:54

相關問題