Reputation: 230
So I'm looking to make an image rotate button appear on hover. I thought I had the idea down with some CSS, but I must have done it incorrectly. See my fiddle here: Fiddle
Thanks in advance
CSS
body {
font-family: sans-serif;
}
#foo {
width:100px;
height:100px;
position:absolute;
top:20px;
left:20px;
border-spacing: 0;
background:none;
transition: all 1s ease;
}
button {display:none;}
#foo img {width:100%;}
#foo img:hover button {display: block;}
JS
function rotateFoo(){
var angle = ($('#foo').data('angle') + 1080) || 1080;
$('#foo').css({'transform': 'rotate(' + angle + 'deg)'});
$('#foo').data('angle', angle);
}
Upvotes: 0
Views: 499
Reputation: 9457
Since you are already using JQuery, would this solution work for yo https://jsfiddle.net/6sw9yrmk/13/
$(document).ready(function() {
$(document).on('mouseenter', '.divbutton', function() {
$(this).find(":button").show();
}).on('mouseleave', '.divbutton', function() {
$(this).find(":button").hide();
});
});
Upvotes: 1
Reputation: 114
You can use .hover()
if you need js logic -> https://api.jquery.com/hover/
Upvotes: 1
Reputation: 2130
Add the following rules
#foo:hover + button, button:hover {
display: block;
position: relative;
left: 50px;
top: 50px
}
You can adjust the left and top position suitable to your needs, but you should note that the button must be on top of the button.
Upvotes: 5