Чего я хочу достичь:
Я хочу, чтобы замена изображения происходила сначала, когда курсор находится над изображением (наведение мыши), а затем при нажатии на изображение (щелчок мыши вниз).
Пример:
У меня есть изображение зеленой стрелки. При наведении курсора он заменяется изображением желтой стрелки, а при нажатии меняет изображение коричневой стрелки (но только до тех пор, пока удерживается щелчок). Зеленая стрелка по умолчанию всегда восстанавливается.
<img src="green-default.png" />
<img src="yellow-over.png" />
<img src="brown-mousedownclick.png" />
Что я пробовал:
Я применил обмен изображениями jQuery, который работает при наведении мыши на событие:
https://github.com/tszming/jquery-swapimage
Пример
<script type="text/javascript">
jQuery.swapImage(".swapImage");
</script>
<img src="green-default.png" class="swapImage {src: 'yellow-over.png'}" />
Любой совет будет оценен.
Принятое решение
Решение Сенада (ниже) повлекло за собой использование CSS вместо jQuery. Элементу ссылки присваивается класс, который стилизует его, чтобы он был блоком размеров заменяемых изображений. Три изображения применяются в качестве фоновых изображений для состояния по умолчанию, наведения и активного состояния элемента ссылки. Решение Сенада и демонстрационный код размещены ниже.