2013-04-01 73 views
0

我在一個隱藏的DIV中使用一個名爲BXSLIDER的JQuery滑塊,它通過jQuery滑動打開。問題是,除非我稍微調整瀏覽器的大小,否則滑塊不會出現。jQuery滑塊不會出現,除非屏幕調整大小

我認爲這是因爲滑塊JavaScript在div打開之前加載,所以它沒有找到適當的高度/寬度尺寸,直到我調整瀏覽器大小之後。

有沒有解決這個問題的方法?

例子是:

Example確保單擊劍橋,然後購物 - 然後調整

+0

爲什麼不直接將滑塊實例變爲可見狀態?或者調用某種類型的更新事件到滑塊?沒有解決方法,這是一個常見的「bug」,當小部件在不可見元素上實例化時發生。 –

回答

1

隱藏與可視性的DIV:隱藏或放置絕對的可視區域之外。然後該元素仍然呈現並且滑塊可以初始化正確。我還推薦Jquery插件imagesLoaded(https://github.com/desandro/imagesloaded),它對於檢查所有圖像是否在任何滑塊啓動之前完全加載非常有用。

0

我知道這是舊的,但它可能在未來幫助別人。我有一個類似的問題,在調整窗口大小之前,沒有顯示JS圖表。我所做的就是將初始化程序封裝爲一個函數,然後在事件處理程序中調用該函數(在我的情況下,它是單擊按鈕)。這是奇怪的解釋沒有細節,但這裏有一個fiddle與它不起作用,並且這fiddle有修復。

$("#button").click(function(){ 
    $("#chartdiv").toggle(); 
    makeChart(); 
}); 

function makeChart() { 
    var chart = AmCharts.makeChart("chartdiv", { 
     //all the stuff 
    }); 
} 
相關問題