调整圆圈大小 - 虫子在哪里?
我有以下代码,圆圈不调整大小:
HTML
<div onMouseOver="mainOver();" onMouseOut="mainOut();" id="c"></div>
JavaScript / jQuery
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'
});
}
问题
- 即使悬停在圆圈上,圆圈也不会执行任何操作。
I have the following code, the circle doesn't resize:
HTML
<div onMouseOver="mainOver();" onMouseOut="mainOut();" id="c"></div>
JavaScript / jQuery
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'
});
}
The problem
- The circle does nothing, even when hovered.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
border-radius:50%
在 anysize 中制作一个方圆查看固定代码:
http://jsfiddle.net/mohsen/ 9j795/16/
border-radius:50%
to make a square circle in anysizeLook at fixed code:
http://jsfiddle.net/mohsen/9j795/16/
您的代码中存在几个问题:
您正在使用 jQuery,因此请使用它的处理程序。
您应该使用 jQuery 中的处理程序,例如
.hover()
处理鼠标悬停和鼠标移出。JavaScript 属性中没有破折号
您不能执行诸如
margin-top: "-50px"
之类的操作,更不用说margin - top: "-50px"
了,相反,您应该使用 camelCasemarginTop: "-50px"
或字符串化您的属性:"margin-top": "-50px"
。不需要供应商前缀
jQuery 自动处理特定浏览器的正确版本。无需对
-webkit-border-radius
等进行动画处理。示例。
There are several issues in your code:
You're using jQuery, so use it's handlers.
You should instead using the handlers in jQuery, such as
.hover()
to handle the mouse over and mouse out.There are no dashes in JavaScript properties
You can't do things like
margin-top: "-50px"
let alonemargin - top: "-50px"
, instead, you should be using camelCasemarginTop: "-50px"
or to stringify your properties:"margin-top": "-50px"
.Vendor prefixes are not needed
jQuery automatically handles the specific browser correct version. No need to animate
-webkit-border-radius
and the such.Example.
不要将
javascript:
添加到onMouseOver
和onMouseOut
。只需mainOver()
和mainOut()
就可以了。编辑:此外,您在一个地方编写了
mainOver()
,在另一个地方编写了mainIn()
。Don't add
javascript:
toonMouseOver
andonMouseOut
. JustmainOver()
andmainOut()
is all you need.EDIT: Also, you wrote
mainOver()
in one place, andmainIn()
in the other.相当多的事情:
border-radius
被解释为border - radius
。在 jQuery 中,属性驼峰式大小写:borderRadius
。onmouseover
等操作。jQuery 提供了此功能。-webkit-...
等。jQuery 应该处理这个问题。请参阅此代码以获取修复:http://jsfiddle.net/9j795/7/
Quite a few things:
border-radius
is interpreted asborder - radius
. In jQuery, the properties camel case:borderRadius
.onmouseover
, etc. jQuery provides this functionality.-webkit-...
, etc. jQuery should take care of this.See this code for the fixes: http://jsfiddle.net/9j795/7/