マウスの座標を使って移動する視差効果を作成しました。エフェクトは機能していますが、赤い枠線の位置を親divの中心に水平および垂直に配置することはできません。視差は赤い枠の周りで、親のdiv内で有効です -視差をdivの中央に揃える方法は?
function mouseMove(event) {
var target = $(this);
var dot = target.find('.pointer');
var height = dot.height();
var width = dot.width();
var offset = target.offset();
var w = target.width();
var h = target.height();
var top = offset.top;
var left = offset.left;
var mX = (event.pageX - left) - width/2;
var mY = (event.pageY - top) - height/2;
TM.to(dot, 1, { x: mX, y: mY, scale: 1, ease: Quint.easeOut, force3D: !0 });
var icon = $('.icon');
var iWidth = icon.width();
var iHeight = icon.height();
var factor = .05;
var x = ((event.pageX - left) - (iWidth/2)) * factor;
var y = ((event.pageY - top) - (iHeight/2)) * factor;
TM.to(icon, 1, { x: x, y: y, scale: 1, ease: Quint.easeOut, force3D: !0 });
};
http://codepen.io/anon/pen/oLQWOG
は、誰かが私を助けることを願って!
UPDATE
'.icon' CSSに' margin:0 auto; 'を追加します。 (http://codepen.io/anon/pen/JKZJKA) – user3297291
親の中心にあるはずですが、マウスの点を左側と赤いボックス、右側とボックスの間に配置するとどちらにも等しくない...これを修正するには? – Caspert
フレックスCSS3を使用するhttp://stackoverflow.com/questions/19026884/flexbox-center-horizontally-and-vertically – kollein