powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Fx.Slide Mootools вывод
1 сообщений из 1, страница 1 из 1
Fx.Slide Mootools вывод
    #35269285
Grossman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые господа!

Никак не могу справиться с проблемой.
Используется функция Fx.Slide из библиотеки Mootols с помощью которой выводится блок с текстом с постраничной разбивкой на ajax.
По умолчанию блок этой функцией выводится уже выведенным (извините за тафтологию), а мне нужно, чтобы был изначально скрытым.

Если бы не было постранички, то все решается просто - добавлением mySlide.hide(); в начало скрипта, но при листании постранички в этом блоке в этом случае каждая страничка, естественно, вначале сбрасывается в hide

Как этого избежать?

Т.е. в идеале нужен вывод в скрытом режиме, а потом, в режиме mySlide.slideIn(); независимо от работы ajax внутри блока чтобы блок не скрывался, или другими словами. чтобы условие mySlide.hide(); в начале скрипта не действовало.

По идее может это можно сделать в самой библиотеке, но в ней никак не разберусь как в описании функции сделать вывод срытым вначале работы скрипта.

Очень нужна Ваша помощь.

Срипт на странице:

<script type="text/javascript">window.addEvent('domready' function(){ //-vertical var mySlide = new Fx.Slide('test'); mySlide.hide(); $('slideout').addEvent('click' function(e){ e = new Event(e); mySlide.slideOut(); e.stop(); }); $('slidein').addEvent('click' function(e){ e = new Event(e); mySlide.slideIn(); e.stop(); }); $('toggle').addEvent('click' function(e){ e = new Event(e); mySlide.toggle(); e.stop(); }); $('hide').addEvent('click' function(e){ e = new Event(e); mySlide.hide(); e.stop(); }); }); </script>

А это описание функции в библиотеке:
Fx.Slide = Fx.Base.extend({ options: { mode: 'vertical' } initialize: function(el options){ this.element = $(el); this.wrapper = new Element('div' {'styles': $extend(this.element.getStyles('margin') {'overflow': 'hidden'})}).injectAfter(this.element).adopt(this.element); this.element.setStyle('margin' 0); this.setOptions(options); this.now = []; this.parent(this.options); this.open = true; this.addEvent('onComplete' function(){ this.open = (this.now[0] === 0); }); if (window.webkit419) this.addEvent('onComplete' function(){ if (this.open) this.element.remove().inject(this.wrapper); }); } setNow: function(){ for (var i = 0; i < 2; i++) this.now = this.compute(this.from this.to ); } vertical: function(){ this.margin = 'margin-top'; this.layout = 'height'; this.offset = this.element.offsetHeight; } horizontal: function(){ this.margin = 'margin-left'; this.layout = 'width'; this.offset = this.element.offsetWidth; } /* Property: slideOut Sides the elements out of view horizontally or vertically. Arguments: mode - (optional string) 'horizontal' or 'vertical'; defaults to options.mode. */ slideOut: function(mode){ this[mode || this.options.mode](); return this.start([this.element.getStyle(this.margin).toInt() this.wrapper.getStyle(this.layout).toInt()] [-this.offset 0]); } /* Property: slideIn Slides the elements in view horizontally or vertically. Arguments: mode - (optional string) 'horizontal' or 'vertical'; defaults to options.mode. */ slideIn: function(mode){ this[mode || this.options.mode](); return this.start([this.element.getStyle(this.margin).toInt() this.wrapper.getStyle(this.layout).toInt()] [0 this.offset]); } /* Property: hide Hides the element without a transition. Arguments: mode - (optional string) 'horizontal' or 'vertical'; defaults to options.mode. */ hide: function(mode){ this[mode || this.options.mode](); this.open = false; return this.set([-this.offset 0]); } /* Property: show Shows the element without a transition. Arguments: mode - (optional string) 'horizontal' or 'vertical'; defaults to options.mode. */ show: function(mode){ this[mode || this.options.mode](); this.open = true; return this.set([0 this.offset]); } /* Property: toggle Slides in or Out the element depending on its state Arguments: mode - (optional string) 'horizontal' or 'vertical'; defaults to options.mode. */ toggle: function(mode){ if (this.wrapper.offsetHeight == 0 || this.wrapper.offsetWidth == 0) return this.slideIn(mode); return this.slideOut(mode); } increase: function(){ this.element.setStyle(this.margin this.now[0] + this.options.unit); this.wrapper.setStyle(this.layout this.now[1] + this.options.unit); }});
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Fx.Slide Mootools вывод
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]