2010-04-21 111 views
0

我正在研究一個菜單系統,我希望ul顯示爲下拉菜單,當用戶在另一個ul上的li上執行mouseOver時。我以爲我會用位置來設定下拉的位置(所以它看起來像一個菜單)。我想要的是下拉的左上角在與包裝清單項左下角相同的位置開始。jquery.position()無法正常工作

  • 在Firefox好像下拉的與約-100 25像素
  • 在列表中的第一項偏移都有不同的左側偏移:

    不幸的是,定位於幾種不同的方式失敗與其他項目相比

  • IE中的偏移量與FF中的偏移量不同FF
  • 在瀏覽器中重複執行定位會導致每次都有不同的位置。

我創建了一個測試頁面,在這裏你可以看到效果: http://test.evju.biz/test/test_position.html

回答

0

我們已經通過不使用jquery.ui.position解決它。以下是我們最終使用的代碼:

$(this).find("ul.subnav").first().css({ 
       left: $(this).position().left + 'px', 
       top: ($(this).position().top + $(this).height()) + 'px' 
      });