Javascript 如何增加旋转值 问题
我想通过使用jquery将旋转值增加到Javascript 如何增加旋转值 问题,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我想通过使用jquery将旋转值增加到div,我知道可以将height和width的值增加$(“#div”).css('height','+=200px')属性,但不能使用transform属性,因为它有很多值,比如translate、rotate、scale和skew 问题: 如何增加旋转值变换:旋转(30度)由30度变为60度 我不想做变换:旋转(60度)使用css或$(“#mydiv”).css('transform','rotate(60deg)使用Jquery 代码 //有什么想法吗
div
,我知道可以将height
和width
的值增加$(“#div”).css('height','+=200px')
属性,但不能使用transform
属性,因为它有很多值,比如translate、rotate、scale和skew
问题:
如何增加旋转值变换:旋转(30度)编码>由30度
变为60度
我不想做变换:旋转(60度)代码>使用css或$(“#mydiv”).css('transform','rotate(60deg)
使用Jquery
代码
//有什么想法吗?
#容器{
填充:100px;
}
#mydiv{
高度:200px;
宽度:200px;
背景:粉红色;
变换:旋转(30度);
}
您可以通过在css('transform'
调用中添加rotate
来完成此操作:
var value = 60;
$("#mydiv").css('transform', 'rotate(' + value + 'deg)');
更多您可以通过将旋转
添加到css('transform'
调用:
var value = 60;
$("#mydiv").css('transform', 'rotate(' + value + 'deg)');
更多编辑:哎呀……我刚才看到您不想使用css,但我将在这里留下答案供参考
这不是过渡的目的吗
注意:示例中未使用供应商前缀…如果您不知道供应商前缀,请将css片段复制/粘贴到服务中,如..并确保使用筛选值:<0%
编辑:oops…我刚才看到您不想使用css,但我会将答案留在这里以供参考
这不是过渡的目的吗
注意:示例中未使用供应商前缀…如果您不知道供应商前缀,请将css片段复制/粘贴到服务中,如..并确保使用筛选值:>0%
解决方案
函数将计算旋转度并返回值。
函数getRotationDegrees(obj){
var矩阵=对象css(“转换”);
如果(矩阵!=“无”){
var values=matrix.split(“(”)[1]。split(“)”)[0]。split(“,”);
var a=数值[0];
var b=数值[1];
变量角度=数学圆(数学atan2(b,a)*(180/数学PI));
}else{var angle=0;}
返回(角度<0)?角度+360:角度;
}
var rotate=getRotationDegrees($(“#mydiv”))+30;
$('#mydiv').css('transform','rotate('+rotate+'deg)
#容器{
填充:100px;
}
#mydiv{
高度:200px;
宽度:200px;
背景:粉红色;
变换:旋转(30度);
}
解决方案
函数将计算旋转度并返回值。
函数getRotationDegrees(obj){
var矩阵=对象css(“转换”);
如果(矩阵!=“无”){
var values=matrix.split(“(”)[1]。split(“)”)[0]。split(“,”);
var a=数值[0];
var b=数值[1];
变量角度=数学圆(数学atan2(b,a)*(180/数学PI));
}else{var angle=0;}
返回(角度<0)?角度+360:角度;
}
var rotate=getRotationDegrees($(“#mydiv”))+30;
$('#mydiv').css('transform','rotate('+rotate+'deg)
#容器{
填充:100px;
}
#mydiv{
高度:200px;
宽度:200px;
背景:粉红色;
变换:旋转(30度);
}
请再读一遍问题:)(我不想做$(“#mydiv”).css('transform','rotate(60deg)
带Jquery)`)它到底返回什么?请再读一遍问题:)(我不想做$(“#mydiv”).css('transform','rotate(60deg)
带Jquery)`)它到底返回什么?你说“如何增加旋转值转换”但“我不想使用css”或“使用Jquery”-那么你想如何实现这一点?你能解释一下为什么我不想做转换:旋转(60度);使用css或$(“#mydiv”).css('transform','rotate(60度)'使用Jquery.
?它们是目前为止最好、最合适的解决方案。就像说“我想系鞋带,但我不想用手”一样,首先我想得到transform:rotate
的当前值,然后将该值加上30deg
?这里有一个片段来解析旋转矩阵-你说““如何增加旋转值转换”但“我不想使用css”或“使用Jquery”-那么你想如何实现这一点?你能解释一下为什么我不想进行转换:旋转(60度);使用css或$(“#mydiv”).css('transform','rotate(60度)'使用Jquery.
?它们是目前为止最好、最合适的解决方案。就像说“我想系鞋带,但我不想用手”一样,首先我想得到transform:rotate
的当前值,然后将该值加上30deg
?下面是一个解析旋转矩阵的片段-