Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Плавный выезд (JQuery) блока в IE (https://javascript.ru/forum/dom-window/3087-plavnyjj-vyezd-jquery-bloka-v-ie.html)

Ozzy 17.03.2009 12:35

Плавный выезд (JQuery) блока в IE
 
Добрый день.

Сделал плавный выезд блока "Возможные варианты поверхности" вот здесь http://www.zamokk.ru/goods/element.p...SECTION_ID=808.

Так вот в FF и Opera всё прекрасно выезжает, а в IE нивкакую.

Использую функцию
$('div.smooth').show('blind', {direction:'vertical'}, 'slow');

Gvozd 17.03.2009 12:54

честно говоря не самое лучшее "украшательство":-E
по сути же:нафига вы переопределяете функцию $ ?

Ozzy 17.03.2009 13:19

Цитата:

Сообщение от Gvozd (Сообщение 14499)
честно говоря не самое лучшее "украшательство":-E
по сути же:нафига вы переопределяете функцию $ ?

Требование ТЗ: выпадение вертикальное плавное.
Функция переопределяется для вертикального выпадения, т.к. по-умолчанию выезд из левого верхнего угла.

Gvozd 17.03.2009 13:26

function $(id) {
		if ( document.getElementById(id) != null )
		{
			return document.getElementById(id);
		}
	}

Это ваше?
этот функционал есть и в jQuery, так что зачем такая функция нужна, мне непонятно.тем более что $() у вас везде используется как функция jQuery
короче говоря мне непонятно на каких магических чилах этот скрипт работает в первых двух браузерах, и пытается работать в осле.

попробуйте покапатся в кодах jQuery, и выясните что такого некросбраузерного они ипсользуют в вашем случае

Ozzy 18.03.2009 11:04

Цитата:

function $(id) {
        if ( document.getElementById(id) != null )
        {
            return document.getElementById(id);
        }
    }

Поясните, пожалуйста, где такая строка в коде. Что-то я её не нахожу.

Следующий момент:
Цитата:

этот функционал есть и в jQuery, так что зачем такая функция нужна, мне непонятно.тем более что $() у вас везде используется как функция jQuery
а каким образом совмещение JQuery и не JQuery может повлять на работу скрипта?

Цитата:

короче говоря мне непонятно на каких магических чилах этот скрипт работает в первых двух браузерах, и пытается работать в осле.
Так вы же не разбирались детально в коде, чтобы понять как работает.

Gvozd 18.03.2009 12:06

Цитата:

Сообщение от Ozzy
Поясните, пожалуйста, где такая строка в коде. Что-то я её не нахожу.

начиная с 75 строчки прямо в теле стрвницы по вашей ссылке

Цитата:

Сообщение от Ozzy
а каким образом совмещение JQuery и не JQuery может повлять на работу скрипта?

если вы переопределяете основную функцию jQuery($().Она же jQuery()), урезая функцинал, то это не есть хорошо.
в jquery есть какая-то приблуда, позволяющая ей отказатся от $(). и вызыватся только с помощью jQuery()

Цитата:

Сообщение от Ozzy
Так вы же не разбирались детально в коде, чтобы понять как работает.

уже понял. определение вашей функции находится до подключения jQuery, поэтому jQuery все-таки тянет одеяло на себя.

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

yuryspb 21.03.2009 02:37

В JQuery я использовал такой способ:
<script>
  $(document).ready(function(){
    
    $("#block1").mouseover(function(){
      $("#block1").animate( { width:"390px" }, { queue:false, duration:1000 } )
    });
    $("#block1").mouseout(function(){
      $("#block1").animate( { width:"40px" }, { queue:false, duration:1000 } )
    });
  
});
  </script>

x-yuri 23.03.2009 07:26

где у тебя обработчик назначается?

Ozzy 23.03.2009 09:52

Цитата:

Сообщение от x-yuri (Сообщение 14912)
где у тебя обработчик назначается?

Кому вопрос?

x-yuri 23.03.2009 18:50

Ozzy, к тебе, в общем-то. Я так понял, что проблема еще не решена?


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