diff options
Diffstat (limited to 'js/toggle.js')
-rw-r--r-- | js/toggle.js | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/js/toggle.js b/js/toggle.js new file mode 100644 index 0000000..6b1ec05 --- /dev/null +++ b/js/toggle.js @@ -0,0 +1,26 @@ +/* ------------------ minimize/restore bar ----------- */ + +SQL.Toggle = function(elm) { + this._state = null; + this._elm = elm; + OZ.Event.add(elm, "click", this._click.bind(this)); + + var defaultState = true; + if (document.location.href.match(/toolbar=hidden/)) { defaultState = false; } + this._switch(defaultState); +} + +SQL.Toggle.prototype._click = function(e) { + this._switch(!this._state); +} + +SQL.Toggle.prototype._switch = function(state) { + this._state = state; + if (this._state) { + OZ.$("bar").style.height = ""; + } else { + OZ.$("bar").style.overflow = "hidden"; + OZ.$("bar").style.height = this._elm.offsetHeight + "px"; + } + this._elm.className = (this._state ? "on" : "off"); +} |