Работя по система от менюта, където искам улпоказват като падащо меню, когато потребителите правят мишка върху li в друга ul. Мислех, че ще използвам позиция, за да настроя позицията на падащото меню (така че всъщност изглежда като меню). Това, което искам, е горният ляв ъгъл на падащото меню да започва от същото място като долния ляв ъгъл на списъка за опаковане ,
За съжаление позиционирането се проваля по няколко различни начина:
- В Firefox изглежда, че падащото меню е компенсирано с приблизително -100 25 пиксела
- първият елемент в списъка има различен отместване от лявата страна в сравнение с останалите елементи
- Отместването в IE не е същото като във FF
- Правенето на позициониране многократно в explorer води до различни позиции всеки път.
Създадох тестова страница, на която можете да видите ефектите: http://test.evju.biz/test/test_position.html
Отговори:
0 за отговор № 1Ние го решихме, като не използваме jquery.ui.position. Ето кода, който в крайна сметка използваме:
$(this).find("ul.subnav").first().css({
left: $(this).position().left + "px",
top: ($(this).position().top + $(this).height()) + "px"
});