我有以下代码,圆圈没有调整大小:
<div onMouseOver="mainOver();" onMouseOut="mainOut();" id="c"></div>
function mainIn()
{
$('#c').animate({
border-radius: '100',
webkit-border-radius: '100',
moz-border-radius: '100',
width: '200',
height: '200',
margin-left: '-100',
margin-top: '-100'
});
}
function mainOut()
{
$('#c').animate({
border-radius: '50',
webkit-border-radius: '50',
moz-border-radius: '50',
width: '100',
height: '100',
margin-left: '-50',
margin-top: '-50'
});
}
答案 0 :(得分:3)
您的代码中存在以下几个问题:
您应该使用jQuery中的处理程序,例如.hover()
来处理鼠标移除和鼠标移出。
您不能执行margin-top: "-50px"
之类的事情,更不用说margin - top: "-50px"
了,而应该使用 camelCase marginTop: "-50px"
或将字符串化属性:"margin-top": "-50px"
。
jQuery自动处理特定浏览器的正确版本。无需动画-webkit-border-radius
等等。
<强> Example 强>
答案 1 :(得分:3)
border-radius:50%
在 anysize 查看固定代码:
$('#c').hover(function(){
$(this).animate({
width: 200,
height:200,
'margin-left':'-100px',
'margin-top':'-100px'
}, 500, function(){});
},function(){
$(this).animate({
width: 100,
height:100,
'margin-left':'-50px',
'margin-top':'-50px'
}, 500, function(){});
});
答案 2 :(得分:2)
请勿将javascript:
添加到onMouseOver
和onMouseOut
。只需mainOver()
和mainOut()
即可。
编辑:此外,您在一个地方写了mainOver()
,在另一个地方写了mainIn()
。
答案 3 :(得分:1)
很多事情:
border-radius
被解释为border - radius
。在jQuery中,属性为camel case:borderRadius
。onmouseover
等.jQuery提供此功能。-webkit-...
等等.jQuery应该处理这个问题。请参阅此代码以了解修正:http://jsfiddle.net/9j795/7/