Сохранить атрибут Hover с помощью указателя-события: none
У меня есть кнопка под фоновым изображением. Чтобы сделать кнопку нажатой, я добавил "pointer-event: none". Тем не менее, я также хочу изображение спрайта, где я меняю фоновое изображение на зависание, которое также отключает событие-указатель. Есть ли способ сохранить атрибут наведения элемента, делая клики через него?
Я искал и попробовал jquery unbind click и returne false при нажатии кнопки #cover_button, но это не сработало.
Вот мой код. Если я держу указатель-событие: ни один я не могу нажать кнопку под моим фоновым изображением. Но это приведет к отключению атрибута hover. Если я удалю его, я не смогу щелкнуть.
#cover_button {
pointer-event: none;
position: absolute;
width: 46px;
height: 24px;
left: 0;
top: 0;
background: url(http://s13.postimg.org/bqxlnbfs3/Like.png);
}
#cover_button:hover {
background: url(http://www.moronacity.com/tech-journal/images/2011/February/small-Facebook-like-button-counter.gif);
}
Edit:
Здесь скрипка:
Кликабельный, но не парящий
http://jsfiddle.net/3PXTK/1/
Здесь другое: Hoverable, но не clickable (я просто удалил указатель-события: none)
http://jsfiddle.net/3PXTK/
Ответы
Ответ 1
У вас не может быть печенья и есть печенье. Для начала вам нужно понять, как работают указатели:
none запрещает все параметры щелчка, состояния и курсора в указанном Элемент HTML
Это означает, что нет клика, нет наведения, нет активного - ничего с курсором. Вы не можете сказать, что я просто хочу hover и ничего больше.
BTW. FB делает это так, потому что они не допускают никаких изменений в подобной кнопке. Вы не можете изменить внешний вид, накрыть его и т.д.