{"id":30150,"date":"2023-01-13T13:10:11","date_gmt":"2023-01-13T07:40:11","guid":{"rendered":"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/"},"modified":"2023-01-13T13:10:11","modified_gmt":"2023-01-13T07:40:11","slug":"solved-change-img-src-on-hover","status":"publish","type":"post","link":"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/","title":{"rendered":"[Solved] Change img src on hover"},"content":{"rendered":"<p> [ad_1]<br \/>\n<\/p>\n<div id=\"answer-40066975\" class=\"answer js-answer accepted-answer js-accepted-answer\" data-answerid=\"40066975\" data-parentid=\"36642550\" data-score=\"0\" data-position-on-page=\"2\" data-highest-scored=\"1\" data-question-has-accepted-highest-score=\"1\" itemprop=\"acceptedAnswer\" itemscope itemtype=\"https:\/\/schema.org\/Answer\">\n<div class=\"post-layout\">\n<div class=\"votecell post-layout--left\"><\/div>\n<div class=\"answercell post-layout--right\">\n<div class=\"s-prose js-post-body\" itemprop=\"text\">\n<p><strong>[1] How can I change img <em>src<\/em> when it&#8217;s on hover<\/strong><br \/>\nYou can&#8217;t do this with CSS alone, as <em><strong>src<\/strong><\/em> is a <strong>DOM attribute<\/strong> not a <strong>CSS attribute<\/strong>, to accomplish this some javascript is required with HTML DOM Event system<\/p>\n<pre><code>&lt;body&gt;\n&lt;div&gt;\n  &lt;img onmouseenter=\"highlight(this)\" onmouseleave=\"unhighlight(this)\" \n       src=\"thumbnail1\"&gt;\n  &lt;a href=\"#potato\" class=\"hoverable-link\"&gt;Some Link&lt;\/a&gt;\n&lt;\/div&gt;\n&lt;script&gt;\n  function highlight(image) {\n    image.src = \"thumbnail2\"; \/\/Blue Image\n  }\n  function unhighlight(image) {\n    image.src = \"thumbnail1\"; \/\/Gray Image\n  }\n&lt;\/script&gt;\n&lt;\/body&gt;\n<\/code><\/pre>\n<p>JsFiddle: <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/jsfiddle.net\/f0c7p3tL\/2\/\">https:\/\/jsfiddle.net\/f0c7p3tL\/2\/<\/a><br \/>\nList of DOM Events: <a rel=\"nofollow noopener\" target=\"_blank\" href=\"http:\/\/www.w3schools.com\/jsref\/dom_obj_event.asp\">http:\/\/www.w3schools.com\/jsref\/dom_obj_event.asp<\/a><\/p>\n<p>Another approach is to not using the <strong><em>src<\/em> DOM attribute<\/strong> at all. Instead you can use the <strong><em>background<\/em> CSS attribute<\/strong>, that way you can utilize the <strong>CSS:hover<\/strong> selector<br \/>\nCSS:<\/p>\n<pre><code>#my-thumbnail {\n  background: url(\"\/thumbnail1\") no-repeat;\n  width: 32px;\n  height: 32px;\n}\n#my-thumbnail:hover {\n  background: url(\"\/thumbnail2\") no-repeat;\n}\n<\/code><\/pre>\n<p>HTML:<\/p>\n<pre><code>&lt;div&gt;\n  &lt;img id=\"my-thumbnail\"&gt;\n  &lt;a href=\"#potato\" class=\"hoverable-link\"&gt;Some Link&lt;\/a&gt;\n&lt;\/div&gt;\n<\/code><\/pre>\n<p>JsFiddle: <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/jsfiddle.net\/7xoprwky\/\">https:\/\/jsfiddle.net\/7xoprwky\/<\/a><\/p>\n<p><strong>[2] How can I trigger hover-event for both element at the same time<\/strong><br \/>\nAgain, two approaches are available here.<\/p>\n<p>First is using javascript and the HTML DOM Events. In this approach, instead of triggering events on either of the child elements, we want them to be triggered on the surrounding <code>&lt;div&gt;<\/code> parent element. Then, in the event handler, we select the child elements and change their <strong>DOM Attribute<\/strong> accordingly<\/p>\n<pre><code>&lt;body&gt;\n&lt;div onmouseenter=\"highlight(this)\" onmouseleave=\"unhighlight(this)\"&gt;\n  &lt;img id=\"my-thumbnail\" src=\"thumbnail1\"&gt;\n  &lt;a   id=\"my-anchor\" href=\"#potato\"&gt;Some Link&lt;\/a&gt;\n&lt;\/div&gt;\n&lt;script&gt;\n  var myThumbnail = document.getElementById('my-thumbnail'),\n      myAnchor = document.getElementById('my-anchor');\n\n  function highlight() {\n    myThumbnail.src = \"\/thumbnail2\";\n    myAnchor.style.color = \"blue\";\n    myAnchor.style.fontWeight = \"bold\";\n  }\n\n  function unhighlight() {\n    myThumbnail.src = \"\/thumbnail1\";\n    myAnchor.style.color = \"gray\";\n    myAnchor.style.fontWeight = \"normal\";\n  }\n&lt;\/script&gt;\n&lt;\/body&gt;\n<\/code><\/pre>\n<p>JsFiddle: <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/jsfiddle.net\/2uthconL\/\">https:\/\/jsfiddle.net\/2uthconL\/<\/a><\/p>\n<p>In the second approach we utilize the CSS selector syntax to highlight our internal element from our surrounding div<\/p>\n<p>CSS:<\/p>\n<pre><code>#my-thumbnail-link {\n}\n#my-thumbnail-link img { \/* Select all img tag inside div *\/\n    background: url(\"\/thumbnail1\") no-repeat;\n    width: 32px;\n    height: 32px;\n}\n#my-thumbnail-link:hover img { \/* Select all img tag inside div when it is hovered *\/\n    background: url(\"\/thumbnail2\") no-repeat;\n}\n#my-thumbnail-link a { \/* Select all a tag inside div *\/\n    color: gray;\n}\n#my-thumbnail-link:hover a { \/* Select all a tag inside div when it is hovered *\/\n    color: blue;\n    font-weight: bold;\n}\n<\/code><\/pre>\n<p>HTML:<\/p>\n<pre><code>&lt;div id=\"my-thumbnail-link\" class=\"vcenter-parent\"&gt;\n  &lt;img class=\"vcenter-child\"&gt;\n  &lt;a href=\"#potato\" class=\"vcenter-child\"&gt;Some Link&lt;\/a&gt;\n&lt;\/div&gt;\n<\/code><\/pre>\n<p>JsFiddle: <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/jsfiddle.net\/x61dy0mk\/2\/\">https:\/\/jsfiddle.net\/x61dy0mk\/2\/<\/a><br \/>\nMore on CSS Selector: <a rel=\"nofollow noopener\" target=\"_blank\" href=\"http:\/\/www.w3schools.com\/cssref\/css_selectors.asp\">http:\/\/www.w3schools.com\/cssref\/css_selectors.asp<\/a><\/p>\n<p>If your thumbnail is just a static asset, I recommend the CSS approach over the Javascript HTML DOM one for its readability and maintainability (imagine keeping thousands of event handlers)<\/p>\n<\/p><\/div>\n<div class=\"mt24\"><\/div>\n<\/div>\n<p>            <span class=\"d-none\" itemprop=\"commentCount\"><\/span> <\/p><\/div>\n<\/div>\n<p>[ad_2]<\/p>\n<p>solved Change img src on hover <\/p>\n","protected":false},"excerpt":{"rendered":"<p>[ad_1] [1] How can I change img src when it&#8217;s on hover You can&#8217;t do this with CSS alone, as src is a DOM attribute not a CSS attribute, to accomplish this some javascript is required with HTML DOM Event system &lt;body&gt; &lt;div&gt; &lt;img onmouseenter=&#8221;highlight(this)&#8221; onmouseleave=&#8221;unhighlight(this)&#8221; src=&#8221;thumbnail1&#8243;&gt; &lt;a href=&#8221;#potato&#8221; class=&#8221;hoverable-link&#8221;&gt;Some Link&lt;\/a&gt; &lt;\/div&gt; &lt;script&gt; function highlight(image) &#8230; <a title=\"[Solved] Change img src on hover\" class=\"read-more\" href=\"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/\" aria-label=\"More on [Solved] Change img src on hover\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[320],"tags":[464,346],"class_list":["post-30150","post","type-post","status-publish","format-standard","hentry","category-solved","tag-css","tag-html"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>[Solved] Change img src on hover - JassWeb<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"[Solved] Change img src on hover - JassWeb\" \/>\n<meta property=\"og:description\" content=\"[ad_1] [1] How can I change img src when it&#8217;s on hover You can&#8217;t do this with CSS alone, as src is a DOM attribute not a CSS attribute, to accomplish this some javascript is required with HTML DOM Event system &lt;body&gt; &lt;div&gt; &lt;img onmouseenter=&quot;highlight(this)&quot; onmouseleave=&quot;unhighlight(this)&quot; src=&quot;thumbnail1&quot;&gt; &lt;a href=&quot;#potato&quot; class=&quot;hoverable-link&quot;&gt;Some Link&lt;\/a&gt; &lt;\/div&gt; &lt;script&gt; function highlight(image) ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/\" \/>\n<meta property=\"og:site_name\" content=\"JassWeb\" \/>\n<meta property=\"article:published_time\" content=\"2023-01-13T07:40:11+00:00\" \/>\n<meta name=\"author\" content=\"Kirat\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kirat\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/\"},\"author\":{\"name\":\"Kirat\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\"},\"headline\":\"[Solved] Change img src on hover\",\"datePublished\":\"2023-01-13T07:40:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/\"},\"wordCount\":256,\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"keywords\":[\"css\",\"html\"],\"articleSection\":[\"Solved\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/\",\"url\":\"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/\",\"name\":\"[Solved] Change img src on hover - JassWeb\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#website\"},\"datePublished\":\"2023-01-13T07:40:11+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/jassweb.com\/solved\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"[Solved] Change img src on hover\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/jassweb.com\/solved\/#website\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"name\":\"JassWeb\",\"description\":\"Build High-quality Websites\",\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/jassweb.com\/solved\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\",\"name\":\"Jass Web\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"contentUrl\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"width\":693,\"height\":132,\"caption\":\"Jass Web\"},\"image\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\",\"name\":\"Kirat\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586\",\"contentUrl\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586\",\"caption\":\"Kirat\"},\"sameAs\":[\"http:\/\/jassweb.com\"],\"url\":\"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"[Solved] Change img src on hover - JassWeb","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/","og_locale":"en_US","og_type":"article","og_title":"[Solved] Change img src on hover - JassWeb","og_description":"[ad_1] [1] How can I change img src when it&#8217;s on hover You can&#8217;t do this with CSS alone, as src is a DOM attribute not a CSS attribute, to accomplish this some javascript is required with HTML DOM Event system &lt;body&gt; &lt;div&gt; &lt;img onmouseenter=\"highlight(this)\" onmouseleave=\"unhighlight(this)\" src=\"thumbnail1\"&gt; &lt;a href=\"#potato\" class=\"hoverable-link\"&gt;Some Link&lt;\/a&gt; &lt;\/div&gt; &lt;script&gt; function highlight(image) ... Read more","og_url":"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/","og_site_name":"JassWeb","article_published_time":"2023-01-13T07:40:11+00:00","author":"Kirat","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kirat","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/#article","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/"},"author":{"name":"Kirat","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31"},"headline":"[Solved] Change img src on hover","datePublished":"2023-01-13T07:40:11+00:00","mainEntityOfPage":{"@id":"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/"},"wordCount":256,"publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"keywords":["css","html"],"articleSection":["Solved"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/","url":"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/","name":"[Solved] Change img src on hover - JassWeb","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/#website"},"datePublished":"2023-01-13T07:40:11+00:00","breadcrumb":{"@id":"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/jassweb.com\/solved\/solved-change-img-src-on-hover\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jassweb.com\/solved\/"},{"@type":"ListItem","position":2,"name":"[Solved] Change img src on hover"}]},{"@type":"WebSite","@id":"https:\/\/jassweb.com\/solved\/#website","url":"https:\/\/jassweb.com\/solved\/","name":"JassWeb","description":"Build High-quality Websites","publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jassweb.com\/solved\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/jassweb.com\/solved\/#organization","name":"Jass Web","url":"https:\/\/jassweb.com\/solved\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/","url":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","contentUrl":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","width":693,"height":132,"caption":"Jass Web"},"image":{"@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31","name":"Kirat","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/","url":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586","contentUrl":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586","caption":"Kirat"},"sameAs":["http:\/\/jassweb.com"],"url":"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/"}]}},"_links":{"self":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/30150","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/comments?post=30150"}],"version-history":[{"count":0,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/30150\/revisions"}],"wp:attachment":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/media?parent=30150"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/categories?post=30150"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/tags?post=30150"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}