#animation #elm #elm-ui
Вопрос:
Я хотел бы просто стереть при наведении курсора мыши на кнопку. Я придумал использовать mouseOver
для изменения фона при наведении, но я не уверен, как создать стирание с одного фона на другой. Я знаю о простой анимации elm, но я слишком новичок в Elm, чтобы понимать документы..
Спасибо!
Ответ №1:
Это удивительно сложно, и отчасти я подозреваю, что подходящая библиотека переходов, специально разработанная для elm-ui (AFAICT), все еще отсутствует.
Основные шаги выглядят следующим образом:
- Определите свойства для состояний запуска и наведения курсора мыши.
- Выясните, каким свойствам они соответствуют в elm-простой анимации.
- Добавьте для них переход.
Element.Input.button
[ Background.color (Element.rgb 0.5 0.5 0.6)
, Element.mouseOver
[ Background.color (Element.rgb 0.7 0.7 1)
]
, Transition.properties
[ Transition.backgroundColor 500 []
]
|> Element.htmlAttribute
]
{ onPress = Nothing
, label = Element.text "Hello"
}
Вы можете увидеть рабочий пример здесь.
Комментарии:
1. Идеальный ответ, спасибо! Просто добавьте эту ссылку, чтобы помочь людям с шагом 2 package.elm-lang.org/packages/andrewMacmurray/…