2011-09-04 20 views
1

我試圖使用由絲集團創建的iPod Drilldown jquery pluginFG jQuery的菜單四溢

看來,當HTML列表(最終組成明細菜單)變得太長,下鑽菜單就會出現上面的主按鈕(或關閉屏幕)。

爲了證明...... 這個比較工作版本:http://goo.gl/OKGFn 這種非工作版本:http://goo.gl/LGMjV

這些URL之間的唯一區別是列表的長度。

我切換了底部通過Chrome devtools生成的div的CSS屬性,菜單返回到視圖中。我試圖使用jQuery刪除此底部 CSS屬性,但我不能夠通過$("#flyout").click,因爲它不存在立即點擊後對其進行修改......

我怎樣才能獲得菜單顯示正確,獨立的名單長度?

編輯1:我發現這是flyOut: true屬性的問題。當這個被禁用時,菜單顯示正常,但我還是想在彈出的功能...

+0

同樣的問題在這裏彈出窗口。你解決了這個問題嗎? –

回答

0

這裏有一個簡單的解決方案,我認爲中放置底部CSS屬性的條件。

線503fg.menu.js

if (true || options.positionOpts.directionV == 'up') { 
+0

感謝Tiben,但這似乎沒有工作......任何其他建議? –

0

我有同樣的問題,但下面解決它,我:

 . . . 
     positionOpts: {posX: 'left', posY: 'bottom', offsetX: -200, offsetY:-300}, 
     flyOut: true, 
     . . . 

,但你必須給至少是那些四個屬性positionOpts! 如果OFFSETX或OFFSETY缺少菜單不會顯示在所有。 如果POSY缺少它的行爲總是按鈕上方「頂部」,即。

0

您的鏈接已損壞,但如果與我的問題相同,則contentheight僅在初始化時檢查,而不是在您單擊以在菜單的各級之間移動時檢查。

首先,設置maxHeight相對列表的大小的東西:

.menu({ 
    maxHeight: 350 
}); 

然後,在fgmenu.js,改變功能checkMenuHeight,看內容過於DIV:

var checkMenuHeight = function(el) { 
    if (el.height() > options.maxHeight) { 
    el.addClass('fg-menu-scroll') 
    }; 
    el.css({ 
    height : options.maxHeight, 
    }); 
    //add this test to grantee the content height to not be smaller then 
    //the list that is shown 
    if (container.height() < options.maxHeight) { 
    container.css({ 
     height : options.maxHeight, 
    }); 
    } 
}; 
0

這些都不爲我工作。我的問題是,當屏幕高度太小而無法顯示整個菜單時,它會向上打開而不是向下打開,可能會在屏幕上顯示。我想迫使它總是開放而不是向上。 這是通過替換fg.menu中的下一行來完成的。JS:

FROM:

if (!fitVertical(subList, $(this).offset().top)) { subList.css({ top: 'auto', bottom: 0 }); }; 

TO:

if (!fitVertical(subList, $(this).offset().top)) { subList.css({ top: 0, bottom: 'auto' }); };