2010-09-02 55 views
2

我已經制作了這個腳本,可以讓你使用jQuery瀏覽多個div,但是如果顯示第6個div並使用.is(「:visible」),我想對父級進行css更改沒有給我任何運氣。jQuery可見定位問題

$(document).ready(function() { 
    /* Set the frame to #sf1 */ 
    $('#sf2, #sf3, #sf4, #sf5, #sf6').hide(); 
    /* Slide Animation for Next Slides */ 
    $('.nextbutton').click(function() { 
     $(this).parents('li').fadeOut(300); 
     $(this).parents('li').next().fadeIn(300); 
     if ($('#sf6').is(":visible") == "true") { 
     alert('that just happened'); 
     $('#stepForm').css('height', 'auto !important'); 
     } 
    }); 
    /* Slide Animation for Previous Slides */ 
    $('.prevbutton').click(function() { 
     $(this).parents('li').prev().fadeIn(300); 
     $(this).parents('li').fadeOut(300); 
    }); 
}); 

回答

2

你應該改變

if ($('#sf6').is(":visible") == "true") { 

只是

if ($('#sf6').is(":visible")) { 
+0

謝謝先生,那修好了 – stephenway 2010-09-02 21:21:21

0

爲什麼不考的CSS屬性,將使其可見......

var dis = $('#sf6').css('display'); 
if (dis == 'visible' || dis == 'block'){ 
    // do something 
} 
0

你可以捕捉它通過測試長度支柱在一個選擇器中完成像這樣:

if ($('#sf6:visible').length) {... 

應該是這樣快一點。只是想我會把它扔出去。 :o)

+0

有趣的觀點,我會給它一個旋轉感謝 – stephenway 2010-09-02 21:34:20