元のJSはサイドバーを共有することを実現します.
2437 ワード
元のJSで実現した分享サイドバーを共有すると、次のような効果が得られます.
以下はコードの実現です.コピーして貼り付けしやすいです.
以下はコードの実現です.コピーして貼り付けしやすいです.
//
var share = document.getElementById("share");
// share
share.onmouseover = function () {
animate(this, "left", 0);
};
share.onmouseout = function () {
animate(this, "left", -100);
};
// animate
function animate(tag, attr, target) {
clearInterval(tag.timer);
tag.timer = setInterval(function () {
//
// ,
// parseInt("hehe") => NaN NaN || 0
// auto NaN , ,
var leader = parseInt(getStyle(tag, attr)) || 0;
// step
var step = (target - leader) / 10;
// offsetLeft ,step ,
// ,
step = step > 0 ? Math.ceil(step) : Math.floor(step);
//
leader = leader + step;
//
tag.style[attr] = leader + "px";
//
if (leader == target) {
clearInterval(tag.timer);
}
}, 17);
}
//
//
function getStyle(tag, attr) {
//
// box.currentStyle, undefined
// getComputedStyle 。 ,
if (tag.currentStyle) {
// ie
return tag.currentStyle[attr];
} else {
//
return getComputedStyle(tag, null)[attr];
}
}