Есть меню, но не простое, а по типу слайдера. Т.е. изначально оно может быть шире макета, а значит то, что не влазит в границы обрезается. И чтобы увидеть остальную часть меню нужно клацать кнопки "вперед" и "назад". При одном нажатии "вперед" меню сдвигается влево на ширину одного пункта меню. Примерная схема, как это выглядит:
Проблема начинается тогда, когда у нас есть подменю. Эти подменю (у каждого пункта ведь свое), оно не сдвигается пропорционально со всем остальным меню при нажатии на "вперед назад", оно конечно остается на месте, ибо у него задано абсолютное позиционирование.
Может кто-то видел уже похожее решение где-нибудь?
По факту вся проблема, как я понял, в том, чтобы при наведении мыши на пункт меню (с подменю), мы высчитываем позицию текущего положения пункта и задаем это положение для подменю. Наброски, более менее работающие:
Загружаем страницу, и пока не нажали "вперед" или "назад" сразу считаем нужные сдвиги
var subm = (function submenuCalc() { $(".submenu").mouseover( function() { //события при наведении на li с подменюvar off = $(this).offset();var off = off.left - w/2 + 12; //позиция сдвига с тем учетом, чтобы подменю было ровно по центру главного пункта $(this).find('ul').css({ 'left': off });});}();
Но, когда начинается анимация, при нажатии на кнопки "вперед" "назад", то мы должны опять все считать, но уже внутри функции анимации, при которой меню ездит вперед или назад:
function animate(dir){...function submenuCalc();});
Все ли логично, или есть решение попроще, может кто в курсе?
Edited by advokatua
You can post now and register later.
If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.
Здравствуйте, подскажите какой тег использовать для увеличения значения, пример на картинке.
Вроде, про такой тег я слышала. Если есть тег прогресс бар, значит и такое должно быть.
Question
advokatua
Люди, кто знает как решить такую проблему:
Есть меню, но не простое, а по типу слайдера. Т.е. изначально оно может быть шире макета, а значит то, что не влазит в границы обрезается. И чтобы увидеть остальную часть меню нужно клацать кнопки "вперед" и "назад". При одном нажатии "вперед" меню сдвигается влево на ширину одного пункта меню. Примерная схема, как это выглядит:
Проблема начинается тогда, когда у нас есть подменю. Эти подменю (у каждого пункта ведь свое), оно не сдвигается пропорционально со всем остальным меню при нажатии на "вперед назад", оно конечно остается на месте, ибо у него задано абсолютное позиционирование.
Может кто-то видел уже похожее решение где-нибудь?
По факту вся проблема, как я понял, в том, чтобы при наведении мыши на пункт меню (с подменю), мы высчитываем позицию текущего положения пункта и задаем это положение для подменю. Наброски, более менее работающие:
Загружаем страницу, и пока не нажали "вперед" или "назад" сразу считаем нужные сдвиги
Link to comment
Share on other sites
4 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.