Было бы просто добавить var myFx = new Fx.Slide(element);
к window.addEvent('domready'...)
, но, поскольку я загружаю «подстраницы» с помощью AJAX, объекты mootools этих элементов внутри этих страниц необходимо создавать после полной загрузки.Если бы я попытался использовать domready, элемент не был бы найден, просто потому что он еще не существует.
Я работал над этим с setTimeout(function() { ... }, 500);
, но это оставляет задержку в 500 мс между загрузкой страницы исоздание эффекта элемента.
то есть
<div id="foo">TextTextText</div>
<script type="text/javascript">
setTimeout(function() {
var myFx = new Fx.Slide('foo').slideOut();
}, 500);
</script>
Когда страница загружена, за 500 мс неуклюже перед тем, как элемент переходит в состояние по умолчанию ... erm ... "slideв".(добавлено?)
Однако существует обходной путь для эффектов .hide () и .show (), поскольку я могу просто написать в html <div id="foo" style="display: none;">
Я попытался приблизитьсясостояние "slid in" элемента с <div id="foo" style="height: 0px; overflow: hidden;">
, но затем элемент остается скрытым, как этот навсегда, и slide () ничего не делает с ним.
Я чувствую, как будто япропустить что-то простое.