Я хотел бы показать div при наведении курсора на элемент в vue.js. Но я не могу заставить его работать.
Похоже, что в vue.js. нет событий для наведения или наведения курсора мыши. Это правда?
Можно ли комбинировать методы jquery hover и vue?
javascript
vue.js
Андерс Андерсен
источник
источник
Ответы:
Вот рабочий пример того, о чем, я думаю, вы просите.
http://jsfiddle.net/1cekfnqw/3017/
источник
v-on:mouseover="mouseOver"
но не упомянул, в какой версии vue был изменен синтаксис@mouseover:mouseover
Я считаю, что приведенная выше логика для зависания неверна. он просто инвертируется при наведении курсора мыши. Я использовал код ниже. кажется, работает отлично.
на экземпляре vue
надеюсь, это поможет
источник
data: () => ({ upHere: false })
Здесь нет необходимости в методе.
HTML
JS
источник
v-on:mouseover
ярлык, либо ярлык,@mouseover
как указано в документации vuejs.org/guide/syntax.html#v-on-Shorthandon
сv-on:
или@
для любого из атрибутов HTML событий. w3schools.com/tags/ref_eventattributes.aspПоказать дочерние или родственные элементы можно только с помощью CSS. Если вы используете ,
:hover
прежде чем комбинаторы (+
,~
,>
,space
). Тогда стиль применяется не к зависшему элементу.HTML
CSS
источник
С
mouseover
иmouseleave
события , которые вы можете определить функцию переключения , которая реализует эту логику и реагировать на значение в рендеринге.Посмотрите этот пример:
источник
@mouseover="btn-color='btn-warning' @mouseleave="btn-color='btn-primary' :class="btn btn-block { btn-color}"
С
mouseover
только элемент остается видимым , когда листья мыши парил элемент, поэтому я добавил это:@mouseover="active = !active" @mouseout="active = !active"
источник
Можно переключить класс при наведении курсора строго внутри шаблона компонента, однако это не практичное решение по очевидным причинам. С другой стороны, для прототипирования я считаю полезным не определять свойства данных или обработчики событий в сценарии.
Вот пример того, как вы можете поэкспериментировать с цветами значков с помощью Vuetify.
источник
У меня возникла та же проблема, и я ее решаю!
источник
Есть правильно работающий JSFiddle: http://jsfiddle.net/1cekfnqw/176/
источник
Хотя я бы дал обновление, используя новый состав api.
Составная часть
Многоразовая функция композиции
Создание
useHover
функции позволит вам повторно использовать любые компоненты.Вот быстрый пример вызова функции внутри компонента Vue.
Вы также можете использовать библиотеку, в
@vuehooks/core
которой есть множество полезных функций, в том числеuseHover
.источник
Вот очень простой пример для MouseOver и MouseOut:
источник
Пожалуйста , обратите внимание на вю-наведении курсора мыши пакет , если вы не удовлетворены , как делает этот код вид:
vue-mouseover предоставляет
v-mouseover
директиву, которая автоматически обновляет указанное свойство контекста данных, когда курсор входит или покидает элемент HTML, к которому прикреплена директива.По умолчанию в следующем примере
isMouseover
свойство будет,true
когда курсор находится над элементом HTML, вfalse
противном случае:Также по умолчанию
isMouseover
будет изначально назначаться приv-mouseover
присоединении кdiv
элементу, поэтому он не останется неназначенным до первогоmouseenter
/mouseleave
события .Вы можете указать собственные значения с помощью
v-mouseover-value
директивы:или
Пользовательские значения по умолчанию могут быть переданы в пакет через объект параметров во время установки.
источник