2010-08-25 61 views
0

我有這個jQuery代碼,它使用checkbox輸入上的toggle()函數(通過ID #rescheck)來顯示覆選框的click/tick上隱藏的div - 它一切都很完美,除了在Chrome上沒有出現真正的「勾號」或「檢查」。複選框沒有檢查何時在jQuery中使用toggle()

在Firefox中,與之相反,無論隱藏的div是否可見,檢查或打勾總是從頁面加載出現。

$("#rescheck").toggle(function(){ 
     $("#reservationfields").stop().animate({ down: "+=300" }, 8000)  
     $("#reservationfields").stop().slideDown("slow");  
    }, function(){ 
     $("#reservationfields").stop().animate({ down: "-=300" }, 8000)  
     $("#reservationfields").stop().slideUp("slow"); 
    }); 

後檢查另一question在這個網站(答案14)然後我修改我的代碼:

$('#rescheck').change(function() { 
    if ($(this).attr("checked")) { 
     $("#reservationfields").stop().animate({ down: "+=300" }, 8000)  
     $("#reservationfields").stop().slideDown("slow"); 
    } else { 
     $("#reservationfields").stop().animate({ down: "-=300" }, 8000)  
     $("#reservationfields").stop().slideUp("slow"); 
    } 
}); 

這精美的作品在FF和Chrome,但Internet Explorer中根本不會 '檢查'並且不會因此揭示隱藏的div。

我真的需要這個工作跨瀏覽器,任何人都可以擺脫一些光? :(

謝謝

+0

您可能需要指定哪些最古老的IE瀏覽器,你會支持的。IE 6和更早版本的支持異常困難。 – 2010-08-25 03:08:24

回答

3

綁定到click,而不是它應該工作。

+0

也許也想看看這個非常相似的其他問題:http://stackoverflow.com/questions/368807/jquery-show-hide-problem-in-internet-explorer – krx 2010-08-25 03:07:24

相關問題