自定义JavaScript循环
我有这个JS代码,并且喜欢通过使用循环来简化它。 循环的最大值是类名为“自定义JavaScript循环,javascript,loops,Javascript,Loops,我有这个JS代码,并且喜欢通过使用循环来简化它。 循环的最大值是类名为“框”的元素数量 var boxElements = $(".box").length; var char1 = $(".char1"); var char1Center = [ char1.offset().left + char1.width() / 2, char1.offset().top + char1.height()
框”
的元素数量
var boxElements = $(".box").length;
var char1 = $(".char1");
var char1Center = [ char1.offset().left + char1.width() / 2,
char1.offset().top + char1.height() / 2
];
var char2 = $(".char2");
var char2Center = [ char2.offset().left + char2.width() / 2,
char2.offset().top + char2.height() / 2
];
var char3 = $(".char3");
var char3Center = [ char3.offset().left + char3.width() / 2,
char3.offset().top + char3.height() / 2
];
var char4 = $(".char4");
var char4Center = [ char4.offset().left + char4.width() / 2,
char4.offset().top + char4.height() / 2
];
var char5 = $(".char5");
var char5Center = [ char5.offset().left + char5.width() / 2,
char5.offset().top + char5.height() / 2
];
var char6 = $(".char6");
var char6Center = [ char6.offset().left + char6.width() / 2,
char6.offset().top + char6.height() / 2
];
$(document).mousemove(function(e){
var angle1 = Math.atan2(e.pageX- char1Center[0],- (e.pageY- char1Center[1]) )*(180/Math.PI);
var angle2 = Math.atan2(e.pageX- char2Center[0],- (e.pageY- char2Center[1]) )*(180/Math.PI);
var angle3 = Math.atan2(e.pageX- char3Center[0],- (e.pageY- char3Center[1]) )*(180/Math.PI);
var angle4 = Math.atan2(e.pageX- char4Center[0],- (e.pageY- char4Center[1]) )*(180/Math.PI);
var angle5 = Math.atan2(e.pageX- char5Center[0],- (e.pageY- char5Center[1]) )*(180/Math.PI);
var angle6 = Math.atan2(e.pageX- char6Center[0],- (e.pageY- char6Center[1]) )*(180/Math.PI);
char1.css({ "-webkit-transform": "rotate(" + angle1 + "deg)"});
char1.css({ "-moz-transform": "rotate(" + angle1 + "deg)"});
char1.css({ "transform": "rotate(" + angle1 + "deg)"});
char2.css({ "-webkit-transform": "rotate(" + angle2 + "deg)"});
char2.css({ "-moz-transform": "rotate(" + angle2 + "deg)"});
char2.css({ "transform": "rotate(" + angle2 + "deg)"});
char3.css({ "-webkit-transform": "rotate(" + angle3 + "deg)"});
char3.css({ "-moz-transform": "rotate(" + angle3 + "deg)"});
char3.css({ "transform": "rotate(" + angle3 + "deg)"});
char4.css({ "-webkit-transform": "rotate(" + angle4 + "deg)"});
char4.css({ "-moz-transform": "rotate(" + angle4 + "deg)"});
char4.css({ "transform": "rotate(" + angle4 + "deg)"});
char5.css({ "-webkit-transform": "rotate(" + angle5 + "deg)"});
char5.css({ "-moz-transform": "rotate(" + angle5 + "deg)"});
char5.css({ "transform": "rotate(" + angle5 + "deg)"});
char6.css({ "-webkit-transform": "rotate(" + angle6 + "deg)"});
char6.css({ "-moz-transform": "rotate(" + angle6 + "deg)"});
char6.css({ "transform": "rotate(" + angle6 + "deg)"});
});
使用
每个jQuery函数
$('.box').each(function(index) {
//index starts at 0
var char = $(this);
var charCenter = [char.offset().left + char.width()/2, char.offset().top + char.height()/2]
});
上述代码未经测试。使用每个jQuery函数
$('.box').each(function(index) {
//index starts at 0
var char = $(this);
var charCenter = [char.offset().left + char.width()/2, char.offset().top + char.height()/2]
});
上述代码未经测试。使用每个jQuery函数
$('.box').each(function(index) {
//index starts at 0
var char = $(this);
var charCenter = [char.offset().left + char.width()/2, char.offset().top + char.height()/2]
});
上述代码未经测试。使用每个jQuery函数
$('.box').each(function(index) {
//index starts at 0
var char = $(this);
var charCenter = [char.offset().left + char.width()/2, char.offset().top + char.height()/2]
});
上述代码未经测试。Nit:each.charN
在技术上不受限制为当前代码的后代(或也是).box
,尽管这很可能是您的意图。谢谢您的回答!我是一个JS新手,如果你能用一个例子来扩展你的代码,那就太好了。妮特:从技术上讲,每个.charN
都不局限于当前代码的后代(或者也不局限于).box
,尽管这很可能是你的意图。谢谢你的回答!我是一个JS新手,如果你能用一个例子来扩展你的代码,那就太好了。妮特:从技术上讲,每个.charN
都不局限于当前代码的后代(或者也不局限于).box
,尽管这很可能是你的意图。谢谢你的回答!我是一个JS新手,如果你能用一个例子来扩展你的代码,那就太好了。妮特:从技术上讲,每个.charN
都不局限于当前代码的后代(或者也不局限于).box
,尽管这很可能是你的意图。谢谢你的回答!我是一个JS新手,如果你能用一个例子来扩展你的代码,那就太好了。