рельсы и сценарий появляются эффект - PullRequest
0 голосов
/ 10 августа 2010

У меня есть вид рельсов с этим HTML:

<body onload='<%= visual_effect(:appear, :main_counter, :duration=>3.0) %>'>  
  <div class="counter" id="main_counter">some content</div>
</body>

и таблица стилей:

.counter{ 
  opacity:0;
}

Эффект работает, как и ожидалось, но когда он закончится, текст div исчезнет, ​​я думаю, непрозрачность вернется к 0 Как мне сделать так, чтобы он оставался с полной непрозрачностью?

1 Ответ

1 голос
/ 11 августа 2010

Проблема в том, что эффект появления удаляет стиль непрозрачности с элемента, как только он будет сделан. самое простое решение - удалить opacity: 0; из таблицы стилей и поместить его прямо в div с помощью style="opacity: 0". Это немного некрасиво из-за встроенного стиля. Другим решением было бы использовать параметр: from в вызове visual_effect, например:

visual_effect(:appear, :main_counter, :duration=>3.0, :from => 0)

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

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

...