2012-04-10 25 views
1

我正在使用jQuery循環插件進行幻燈片顯示,並且導航出現在我測試過的所有瀏覽器中,除了IE7(和IE6,但我並不擔心這一點)。jQuery的循環導航將不會顯示在IE7中

下面是一個例子http://jsfiddle.net/WVGS3/11/(看它在IE7,很明顯)

當我看着它在IE7,導航消失。就好像它不喜歡空的.slide_nav div。如果我在.slide_nav div內鍵入一些文本,導航會隨着我寫的任何文本一起顯示。

例這裏http://jsfiddle.net/WVGS3/12/

我把文本span元素中,並設置text-indent:-9999px但讓一切消失。我使用display:nonedisplay:hidden,但它們表現奇怪。

也許我錯過了一些東西。

任何人都知道什麼會在這裏工作?我試過使用position:relative,z-index:1000,zoom:1,對父母和子女的元素,但沒有任何作品....

希望有人能幫助。謝謝!

回答

2

你必須把至少一個 div裏面如下僅針對IE的hasLayout

<div class="slide_nav">&nbsp;</div> 

然後你可以使用

$(document).ready(function() { 
    $('.slideshow').cycle({ 
     fx: 'scrollLeft', 
     pager: ".slide_nav" 
    }); 
    // Re align 
    var ml=parseInt($('.slide_nav').css('margin-left')); 
    $('.slide_nav').css('margin-left',(ml-5)+'px'); 

});​ 

在IE7,example測試。可能不合適,但解決了這個問題。

+0

謝謝很多謝赫!這絕對有效。適合與否,對我有用。所以你可以簡單地告訴我這裏發生了什麼。你是否在那裏添加break來顯示div,然後使用jquery向後移動slide_nav? – bjornio 2012-04-11 23:39:41

+0

感謝您對hasLayout鏈接的提示! – bjornio 2012-04-11 23:40:40

+0

謝謝,是的,我剛剛加了' 不可破壞的空間',它增加了5px的空白空間,所以我重新對齊了-5px的邊緣元素。 – 2012-04-11 23:49:48