Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   resize в Opera, есть решение? (https://javascript.ru/forum/jquery/30222-resize-v-opera-est-reshenie.html)

madd1 28.07.2012 03:23

resize в Opera, есть решение?
 
Здравствуйте.

Помню уже года 2 назад сталкивался с подобной проблемой, так и не нашел решение тогда, думал, что сейчас то Опера не должна выдавать подобные фейлы, но выяснилось, что выдает.

Проблема в событии onresize, оно выполняется какими-то рывками, такой вот код:
$(window).bind("resize", function(e) {
				$('#login_more').css({left: $('#mlogin_form').position().left+3});
});

работает полностью плавно во всех браузерах, кроме Оперы.

Пробовал ещё так:
$(window).bind("resize", function(e) {
			if (!window.opera) {
				$('#login_more').css({left: $('#mlogin_form').position().left+3});
			}
});
setInterval(function() {
			if (window.opera) {
				$('#login_more').css({left: $('#mlogin_form').position().left+3});
			}
}, 1);


Всё равно рывками. А мне принципиально важно, чтобы этот блок двигался плавно вместе с дизайном и был абсолютно позиционирован.

Неужели до сих пор эту проблему нельзя нормально решить или я туплю? Причем реально долго гуглил, как же решить, но нигде нет ответа, обычно советуют как раз таймер, который мне почему-то не помог.

Deff 28.07.2012 03:28

madd1,
Ссылка на реальную страницу есть ?
И вообще -смысл данного деяния - поясните ?

madd1 28.07.2012 03:31

Ссылки нет, пока на локалхосте творю.
Есть форма логина, хочу при фокусе её инпутов выводить доп. блок (для входа через соц. сети) (причем абсолютно, так как он заплывает на другой дизайн при выводе), это я уже сделал, осталась проблема только в ресайзе окна, блок не должен при нем пропадать, а должен продолжать движение за формой логина, во всех браузерах прекрасно работает, кроме Оперы.

Deff 28.07.2012 03:52

madd1,
Хм а ежели он должен двигацо за формой - воткните в форму span c display:inline-block; и position:absolute; в span ипортируйте ваш блок тож с абсолютной позицией, в результе получите привязаный к форме, без всяких резицей
Если стрёмно в саму форму - оберните форму span c display:inline-block; :D (карочь таблетка №6 получилась, как в байке про Василия Ивановича

madd1 28.07.2012 04:03

Там тоже косяки, к примеру, если оборачивать всю форму в блок с абсолютным позиционированием и inline-block, то во всех браузерах всё ок, я уже думал пора радоваться, но посмотрел в опере, там форма хрен знает куда уехала.

А если добавить блок в форму, то он во всех браузерах немного по-разному позиционируется в итоге относительно её, в опере прямо под формой, в остальных в разной степени левее и ниже формы.

Я так понимаю, проблема из сабжа - не решаема, тогда буду решать эти проблемы, спасибо :)

Deff 28.07.2012 04:14

madd1,
Попробуйте переустановить Оперу - чот нет у мну таких проблем

Aetae 28.07.2012 04:14

Забейте на onresize. Нормальный пользователь практически никогда не меняет размер страницы во время работы.

Deff 28.07.2012 04:15

madd1,
Да всё решаема - ну не лечат зубы по фотографиям нормально - выложите на укоз или на народ данный кусок с трабломм - тады подсказать и сделать реально - вот у мну тож телек вчера сломался- подскажите по сабжу ?

madd1 28.07.2012 04:19

Цитата:

Сообщение от Deff (Сообщение 192315)
madd1,
Да всё решаема - ну не лечат зубы по фотографиям нормально - выложите на укоз или на народ данный кусок с трабломм - тады подсказать и сделать реально - вот у мну тож телек вчера сломался- подскажите по сабжу ?

Сейчас подумаю куда выложить, выложу.

Цитата:

Сообщение от Aetae (Сообщение 192314)
Забейте на onresize. Нормальный пользователь практически никогда не меняет размер страницы во время работы.

Значит я ненормальный :lol:

madd1 28.07.2012 04:26

В общем, вот: http://31.135.72.169/govnosait/
фокус на инпуте сделайте и подвигайте ширину окна в опере и в других браузерах.


Часовой пояс GMT +3, время: 20:01.