Jquery:以编程方式居中元素
我正在尝试创建一个可以应用于 div 的函数,并让该 div 在其父级中垂直和水平居中。
我试图使居中功能变得通用,这样我就不必继续重写居中代码。
使用 JQUERY 如何使居中变得最简单。
$('p').hoverIntent(function () {
var myObject = $('#bThis')
var Ctop = $(this).offset().top + ($(this).height() / 2) - (myObject.outerHeight() / 2)
var Cleft = $(this).offset().left + ($(this).width() / 2) - (myObject.outerWidth() / 2)
if ($('#placeB').hasClass('place')) {
$(this).animate({color: "#999999", backgroundColor: "#f5f5f5"}, 400)
$('#bThis').css({'left':Cleft, 'top':Ctop}).fadeIn(200)
}
}, function() {
$(this).stop().animate({color: "#333", backgroundColor: "#fff"}, 200)
$('#bThis').fadeOut(200)
});
I'm trying to create a function that I can apply to a div, and have that div centered within it's parent, both vertically and horizontally.
I'm trying to make the function of centering things generic so i don't have to keep rewriting the centering piece of code.
What would you do to make centering things easiest, WITH JQUERY.
$('p').hoverIntent(function () {
var myObject = $('#bThis')
var Ctop = $(this).offset().top + ($(this).height() / 2) - (myObject.outerHeight() / 2)
var Cleft = $(this).offset().left + ($(this).width() / 2) - (myObject.outerWidth() / 2)
if ($('#placeB').hasClass('place')) {
$(this).animate({color: "#999999", backgroundColor: "#f5f5f5"}, 400)
$('#bThis').css({'left':Cleft, 'top':Ctop}).fadeIn(200)
}
}, function() {
$(this).stop().animate({color: "#333", backgroundColor: "#fff"}, 200)
$('#bThis').fadeOut(200)
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
编辑:
请参阅此处的工作示例。
编辑结束
那么,将“居中”工作委托给它自己的函数难道不会起到作用吗?
在你的调用函数中..
EDIT:
See the working example here.
End of Edit
Well, wouldn't delegating the job of "center-ing" to its own function do the trick?
In your calling function..