カイルが言ったように、このタスクを実行するには多くの方法があります。最も簡単な (そして最もブラウザーに準拠した) 方法は、単純な jQuery ホバー効果を実行することでしょう。画像をホバーすると、別の画像が表示され、その上にフェードします。もちろん、2 番目の画像は透過 PNG である可能性が高く、元の画像が変形しているように見えます。
jQuery にはこれの多くの実装があります。簡単な Google 検索を行うと、いくつかの結果が得られます。たとえば、いくつかのSO投稿を次に示します。
編集#2
おっと、オーバーレイではなくスワップのリンクを投稿しました。オーバーレイも非常に簡単に実行できます。これらのリンクは次のとおりです。
JQuery マウスオーバー画像オーバーレイ
編集
この StackOverflow の回答では、jQuery の代わりに CSS3 を使用しています。ただし、コメンターが指摘したように、要件によっては、サポートする必要があるブラウザーでこれが機能しない場合があります。
2 番目の質問であるモバイル環境についてですが、サイトのモバイル バージョンではホバー効果を除外することをお勧めします。そうすれば、モバイル デバイスでの UI 効果よりもはるかに重要な、コンテンツのみを配信することに集中できます。それでも何らかの効果が必要な場合は、iOS/Android/WP8/etc のユーザー エージェントを検出し、ホバー効果を代わりにa:active
画像リンクの効果にすることができます。