我试图改变div中透明图像的颜色(使用jQuery)。在改变颜色时,我无法将图像的左侧和顶部固定到div中。
有人可以帮忙吗?如果用户点击任何跨度颜色,我试图填充图像。
test.css:
.iconWrapper .color span
{
width: 50px;
height: 58px;
display: block;
}
.color1
{
background-color: #f6f6f6;
}
.color2
{
background-color: #ffe25b;
}
.color3
{
background-color: #e35990;
}
.color4
{
background-color: #58c1d8;
}
step1.php
<link rel="stylesheet" type="text/css" href="test.css" media="screen" />
<script language="javascript" type="text/javascript">
$(function() {
$('.iconWrapper span').click(function(e){
var color=$(this).attr('class');
//alert(color);
$('#div1').removeClass().addClass(color);
$('#hiddencolor').val(color);
e.preventDefault();
});
});
</script>
</head>
<body>
<div class="iconWrapper">
<ul class="color">
<li>
<a href="#" title="Selecteer"><span class="color1"></span></a>
</li>
<li>
<a href="#" title="Selecteer "><span class="color2" ></span></a>
</li>
<li>
<a href="#" title="Selecteer"><span class="color3"></span></a>
</li>
<li>
<a href="#" title="Selecteer"><span class="color4"></span></a>
</li>
</ul>
</div>
<div id="div1" style="width:17%; height:28%;" ><img src="img/107.png" />
<form method="post" action="step3.php">
<input name="kleur" type="text" value="" id="hiddencolor" />
<input name="submit" type="submit" value="Submit" />
</form>
</div>
答案 0 :(得分:1)
将父div的宽度从17%
更改为width
的{{1}},换句话说img
答案 1 :(得分:1)
$('#div1 img').removeClass().addClass(color);
这会是你想要的吗?
如果你想要的是不会溢出图像内部边框的颜色,我能找到的唯一解决方案是编辑图像,这样就有白色,你不想看到颜色 - 而不是透明的。
我无法理解你想要实现的目标。 :|
答案 2 :(得分:0)
尝试:
$(function () {
$('.iconWrapper span').click(function (e) {
var $span = $(this),
color = $span.attr('class');
$('#div1 img').css('background-color', $span.css('background-color'));
$('#hiddencolor').val(color);
e.preventDefault();
});
});