﻿function FloatLayer(option) {
    this.Option = option;

    var closeButton = option.closeButton;
    closeButton.onclick = function FloatLayer$Close() {
        var target = option.target;
        target.style.display = 'none';
    }

    setTimeout(this.Option.id + '.Refresh();', 0);
}

FloatLayer.prototype.Option = null;

FloatLayer.prototype.Refresh = function FloatLayer$Refresh() {
    var target = this.Option.target;
    var left = this.Option.left;
    var top = this.Option.top;
    var id = this.Option.id;

    var scrollTop = document.documentElement.scrollTop || window.pageYOffset || 0;
    var targetTop = target.getBoundingClientRect().top + scrollTop;

    if (targetTop != scrollTop + top) {
        var step = targetTop + ((scrollTop + top - targetTop) / 5)
        target.style.top = step + 'px';
    }
    target.style.left = left + 'px';

    setTimeout(id + '.Refresh();', 50);
}
