Я пытаюсь создать функцию, которую я могу применить к div, и иметь этот div в центре его родителя, как по вертикали, так и по горизонтали.JQuery: программно центральные элементы
Я пытаюсь сделать функцию центрирования общих вещей, поэтому мне не нужно переписывать центрирующий кусок кода.
Что бы вы сделали, чтобы сделать центрирование проще всего, с помощью 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)
});
Отлично, это то, что я искал. Не пробовал, но похоже, что это сработает. Эй, если это не так уж сложно, как я смогу добавить смещение от центра? поэтому, если я хочу, чтобы элемент был -100px вверх от центра родителя, как бы я его сделал, чтобы я мог установить это, когда я вызываю функцию? поэтому он динамичен, и я могу настроить его для каждой ситуации, в которой я нуждаюсь? и есть ли учебник/учебный сайт jquery, который вы лично рекомендовали бы или нет? Еще раз спасибо. –
@nick: Могу ли я предложить абсолютное позиционирование? При использовании абсолютного позиционирования в div с относительным позиционированием .. вы всегда можете указать 'top: X px'. Где X = (Высота контейнера/2) - 100 –
@nick: см. Мое редактирование. прохождение 0, 0 даст вам точный центр. Что касается учебников jQuery, то в Интернете есть тонны контента, и было бы сложно сделать какие-либо рекомендации .. кроме как сказать «Пойдите туда и исследуйте то, что подходит вашим потребностям, а что нет». :) Удачи! –