如何使用jquery动画功能设置多个css
假设我有类似的css如何使用jquery动画功能设置多个css,jquery,css,Jquery,Css,假设我有类似的css position: fixed; width: 200px; height: 100px; top: 50%; left: 50%; margin-left: -100px; margin-top: -50px; 这个css我需要从jquery动画函数中为div设置。有可能吗。 我知道jquery动画函数的用法,比如 $(".ui-dialog").animate({ left: viewportwidth / 2 - $(".ui-dialog").outerWidth
position: fixed;
width: 200px;
height: 100px;
top: 50%;
left: 50%;
margin-left: -100px;
margin-top: -50px;
这个css我需要从jquery动画函数中为div设置。有可能吗。
我知道jquery动画函数的用法,比如
$(".ui-dialog").animate({
left: viewportwidth / 2 - $(".ui-dialog").outerWidth() / 2,
top: viewportheight / 2 - $(".ui-dialog").outerHeight / 2
}, 1000);
谢谢将CSS创建为一个类:
div.myClass {
position: fixed;
width: 200px;
height: 100px;
top: 50%;
left: 50%;
margin-left: -100px;
margin-top: -50px;
}
div.newClass {
position: fixed;
width: 500px;
height: 500px;
top: 50%;
left: 50%;
margin-left: -100px;
margin-top: -50px;
}
然后使用jQueryaddClass()
这假设您的DIV的ID为myDiv,如下所示:
<div id="myDiv"></div>
如果需要从当前类设置动画到另一个类,可以使用以下函数:
这是一个将绑定上的类更改为按钮的示例
<script>
$(function() {
$( "#button" ).click(function(){
$( "div#myDiv" ).switchClass( "myClass", "newClass", 1000 );
return false;
});
});
</script>
$(函数(){
$(“#按钮”)。单击(函数(){
$(“div#myDiv”).switchClass(“myClass”,“newClass”,1000);
返回false;
});
});
将CSS创建为类:
div.myClass {
position: fixed;
width: 200px;
height: 100px;
top: 50%;
left: 50%;
margin-left: -100px;
margin-top: -50px;
}
div.newClass {
position: fixed;
width: 500px;
height: 500px;
top: 50%;
left: 50%;
margin-left: -100px;
margin-top: -50px;
}
然后使用jQueryaddClass()
这假设您的DIV的ID为myDiv,如下所示:
<div id="myDiv"></div>
如果需要从当前类设置动画到另一个类,可以使用以下函数:
这是一个将绑定上的类更改为按钮的示例
<script>
$(function() {
$( "#button" ).click(function(){
$( "div#myDiv" ).switchClass( "myClass", "newClass", 1000 );
return false;
});
});
</script>
$(函数(){
$(“#按钮”)。单击(函数(){
$(“div#myDiv”).switchClass(“myClass”,“newClass”,1000);
返回false;
});
});
您的代码按原样与我一起工作:)
但如果您将“viewportwidth”和“viewportheight”与“px”或“em”或其他任何东西一起使用,请使用“.parseInt()”来消除单位:)
我的代码是:
var viewportwidth = 120;
var viewportheight = 120;
$(".ui-dialog").animate({
left: viewportwidth / 2 - $(".ui-dialog").outerWidth() / 2 +"px",
top: viewportheight / 2 - $(".ui-dialog").outerHeight() / 2 +"px"
}, 1000);
});
顺便说一句,我看到你错过了“outerHeight”后面的括号,以及FF中使用和不使用
+“px”的代码,我希望我能正确理解你的意思。你的代码按原样使用我:)
但如果您将“viewportwidth”和“viewportheight”与“px”或“em”或其他任何东西一起使用,请使用“.parseInt()”来消除单位:)
我的代码是:
var viewportwidth = 120;
var viewportheight = 120;
$(".ui-dialog").animate({
left: viewportwidth / 2 - $(".ui-dialog").outerWidth() / 2 +"px",
top: viewportheight / 2 - $(".ui-dialog").outerHeight() / 2 +"px"
}, 1000);
});
顺便说一句,我看到你错过了“outerHeight”后面的括号,以及FF中使用和不使用+“px”
的代码,我希望我能正确理解你的意思。是的,这是可能的,但要注意两件事:
无法设置位置:固定的动画。(引自):
大多数非数字属性无法使用basic设置动画
jQuery功能(例如,宽度、高度或左侧可以是
已设置动画,但无法设置背景色
使用类来处理这个问题
使用marginTop
和marginLeft
代替marginTop
和
左边距
(引自):
尝试使用“marginTop”而不是“marginTop”。通常在使用
CSS道具作为“边框某物”或“边距某物”更好
使用它的“规范化”版本,就像在DHTML中一样
(styles.marginTop)
希望有帮助。是的,这是可能的,但要注意两件事:
无法设置位置的动画:已修复(引用自):
大多数非数字属性无法使用basic设置动画
jQuery功能(例如,宽度、高度或左侧可以是
已设置动画,但无法设置背景色
使用类来处理这个问题
使用marginTop
和marginLeft
代替marginTop
和
左边距
(引自):
尝试使用“marginTop”而不是“marginTop”。通常在使用
CSS道具作为“边框某物”或“边距某物”更好
使用它的“规范化”版本,就像在DHTML中一样
(styles.marginTop)
希望有帮助。你想设置什么动画?例如,位置:固定的
不能设置动画。你想设置什么动画?例如,位置:固定的
不能设置动画。@RobW好吧,那很好,也许他们以后会解决这个问题,当我学习JQuery时,我看到了我必须使用parseInt()解决这个问题的教程:)所以我在这里说:)@RobW好吧,那很好,也许他们以后会解决它,当我学习JQuery时,我看到了教程,我必须使用parseInt()解决它:),所以我在这里说:)