📄 bs_button.class.js
字号:
/********************************************************************************************* BlueShoes Framework; This file is part of the php application framework.* NOTE: This code is stripped (obfuscated). To get the clean documented code goto * www.blueshoes.org and register for the free open source *DEVELOPER* version or * buy the commercial version.* * In case you've already got the developer version, then this is one of the few * packages/classes that is only available to *PAYING* customers.* To get it go to www.blueshoes.org and buy a commercial version.* * @copyright www.blueshoes.org* @author Samuel Blume <sam at blueshoes dot org>* @author Andrej Arn <andrej at blueshoes dot org>*/if (!Bs_Objects) {var Bs_Objects = [];};function Bs_Button() {this._id;this._objectId;this.id;this.group;this._status = 1;this.inactiveStyle = 3;this._imgPathDefault = '/_bsImages/buttons/';this.imgPath;this.imgName;this.height;this.width;this.backgroundColor;this.title;this.caption;this.action;this.cssClassDefault = 'bsBtnDefault';this.cssClassMouseOver = 'bsBtnMouseOver';this.cssClassMouseDown = 'bsBtnMouseDown';this._buttonBar;this.actualizeFromChildren = 0;this._childrenButtonBar;this._isDragAction;this._attachedEvents = new Array;this._constructor = function() {this._id = Bs_Objects.length;Bs_Objects[this._id] = this;this._objectId = "Bs_Button_"+this._id;}this.attachEvent = function(fire, e) {if (typeof(e) == 'undefined') e = 'on';if (typeof(this._attachedEvents[e]) == 'undefined') this._attachedEvents[e] = new Array;this._attachedEvents[e][this._attachedEvents[e].length] = fire;}this.attachFireOff = function(param) {}this.render = function() {var isGecko = this._isGecko();var out = new Array;var containerStyle = new Array;out[out.length] = '<div style="display:inline; white-space:nowrap;">';var tagType = 'div';out[out.length] = '<' + tagType;out[out.length] = ' id="' + this._getId() + '"';if (typeof(this.title) != 'undefined') {out[out.length] = ' title="' + this.title + '"';}out[out.length] = ' unselectable="on"';captionType = typeof(this.caption);if (captionType != 'undefined') {containerStyle[containerStyle.length] = 'width:auto';} else {if (typeof(this.width) != 'undefined') containerStyle[containerStyle.length] = 'width:' + this.width + 'px';if (typeof(this.height) != 'undefined') containerStyle[containerStyle.length] = 'height:' + this.height + 'px';}if (typeof(this.backgroundColor) != 'undefined') containerStyle[containerStyle.length] = 'background-color:' + this.backgroundColor;switch (this._status) {case 0:var filter = this._getInactiveStyleFilter();if (typeof(filter) == 'string') {containerStyle[containerStyle.length] = 'filter:' + filter;}case 1:out[out.length] = ' class="' + this.cssClassDefault + '"';break;case 2:out[out.length] = ' class="' + this.cssClassMouseDown + '"';break;}out[out.length] = ' style="' + containerStyle.join(';') + '"';out[out.length] = ' onMouseOver="Bs_Objects['+this._id+'].mouseOver(this);"';out[out.length] = ' onMouseOut="Bs_Objects['+this._id+'].mouseOut(this);"';out[out.length] = ' onMouseDown="Bs_Objects['+this._id+'].mouseDown(this);"';out[out.length] = ' onMouseUp="Bs_Objects['+this._id+'].mouseUp(this);"';out[out.length] = '>';if (typeof(this.imgName) != 'undefined') {var imgFullPath = '';imgFullPath += this._getImgPath();imgFullPath += this.imgName;if (this.imgName.substr(this.imgName.length -4) != '.gif') imgFullPath += '.gif';out[out.length] = '<img id="' + this._getId() + '_icon" src="' + imgFullPath + '"';if ((typeof(this.height) == 'undefined') || (this.height > 18)) out[out.length] = ' style="vertical-align:top;"';out[out.length] = '>';}captionType = typeof(this.caption);if (captionType != 'undefined') {if (captionType == 'string') {out[out.length] = this.caption;} else {out[out.length] = this.title;}if (!isGecko) out[out.length] = ' ';}if ((typeof(this._childrenButtonBar) != 'undefined') && (this.numberOfAttachedEvents('on') == 0)) {this.group = this._objectId + '_pseudoGroup';var imgFullPath = '';if (this.imgPath) imgFullPath += this._getImgPath();imgFullPath += 'small_black_arrow_down.gif';out[out.length] = ' <img src="' + imgFullPath + '" style="vertical-align:middle;"> ';var subBarString = this._childrenButtonBar.render();subBarString = '<div id="' + this._objectId + '_childBar" class="bsBtnMouseOver" style="width:auto; height:auto; display:none; position:absolute; left:50px; top:50px;">' + subBarString + '</div>';out[out.length] = subBarString;}out[out.length] = '</' + tagType + '>';out[out.length] = '</div>';return out.join('');}this.drawOut = function() {document.writeln(this.render());}this.drawInto = function(elm) {if (typeof(elm) == 'string') {elm = document.getElementById(elm);}if (elm != null) {var x = this.render(); //x = x.replace(/<nobr>/, ''); //x = x.replace(/<\/nobr>/, ''); x = x.replace(/<nobr>/, '<span style="white-space: nowrap">'); x = x.replace(/<\/nobr>/, '<\/span>');elm.innerHTML = x;}}this.mouseOver = function(div) {if (this._status == 2) return;if (this._status == 0) return;if (!this._isGecko()) {div.className = this.cssClassMouseOver;}this._fireEvent('over');}this.mouseOut = function(div) {if (this._status == 2) return;if (this._status == 0) return;if (!this._isGecko()) {div.className = this.cssClassDefault;}this._fireEvent('out');}this.mouseDown = function(div) {if (this._status == 0) return;this._isDragAction = false;div.className = this.cssClassMouseDown;}this.mouseUp = function(div) {if (this._status == 0) return;var doFireOn = true;var doFireOff = false;if (this._isGecko()) {div.className = this.cssClassDefault;} else {div.className = this.cssClassMouseOver;}if (typeof(this.group) != 'undefined') {if (this._status == 2) {this._status = 1;doFireOn = false;doFireOff = true;} else {div.className = this.cssClassMouseDown;this._status = 2;this._deactivateOtherGroupButtons();}}if (this._isDragAction) doFireOn = false;if (doFireOn) {this._fireEvent('on');} else if (doFireOff) {this._fireEvent('off');}}this.dragStart = function(div) {if (this._status == 0) return false;this._isDragAction = true;div.className = this.cssClassMouseOver;return false;}this._deactivateOtherGroupButtons = function() {if (typeof(this._buttonBar) == 'undefined') return;for (var i=0; i<this._buttonBar._buttons.length; i++) {var btnObj = this._buttonBar._buttons[i][0];if (typeof(btnObj) != 'object') continue;if ((btnObj.group == this.group)) {if (btnObj._objectId == this._objectId) continue;btnObj._status = 1;btnDiv = document.getElementById(btnObj._getId());btnDiv.className = btnObj.cssClassDefault;}}}this.setStatus = function(status) {if (this._status == status) return;var oldStatus = this._status;this._status = status;var btnDiv = document.getElementById(this._getId());if (btnDiv != null) {switch (status) {case 0:var filter = this._getInactiveStyleFilter();if (typeof(filter) == 'string') {btnDiv.style.filter = filter;}break;case 1:btnDiv.className = this.cssClassDefault;break;case 2:if (this._isGecko()) {btnDiv.className = this.cssClassDefault;} else {btnDiv.className = this.cssClassMouseDown;}if (typeof(this.group) != 'undefined') {this._deactivateOtherGroupButtons();}break;}}if ((oldStatus == 0) && (this.inactiveStyle != 0)) {btnDiv.style.filter = "";}}this.getStatus = function() {return this._status;}this.setTitle = function(title) {var elm = document.getElementById(this._getId());if (elm != null) elm.title = title;this.title = title;}this.setChildrenButtonBar = function(bar) {bar._parentButton = this;this._childrenButtonBar = bar;}this._isGecko = function() {if (navigator.appName == "Microsoft Internet Explorer") return false; var x = navigator.userAgent.match(/gecko/i);return (x);return false;}this._fireEvent = function(e) {if ((e == 'on') && (typeof(this._buttonBar) != 'undefined') && (typeof(this._buttonBar._parentButton) != 'undefined')) {this._buttonBar._parentButton._fireEvent('off');if ((this._buttonBar._parentButton.actualizeFromChildren == 1) || (this._buttonBar._parentButton.actualizeFromChildren == 3)) {var elm = document.getElementById(this._buttonBar._parentButton._getId() + '_icon');var imgFullPath = '';if (this.imgPath) imgFullPath += this.imgPath;imgFullPath += this.imgName;if (this.imgName.substr(this.imgName.length -4) != '.gif') imgFullPath += '.gif';elm.src = imgFullPath;}}if (((e == 'on') || (e == 'off')) && (typeof(this._childrenButtonBar) != 'undefined') && (this.numberOfAttachedEvents('on') == 0)) {var elm = document.getElementById(this._objectId + '_childBar');if (elm != null) {if (e == 'on') {this._buttonBar.ignoreEvents = true;var pos = getAbsolutePos(document.getElementById(this._getId()));var plusPixel = (typeof(this.height) != 'undefined') ? parseInt(this.height) : 22;elm.style.top = (pos.y + plusPixel) + 'px';elm.style.left = pos.x + 'px';elm.style.display = 'block';} else {this._buttonBar.ignoreEvents = false;elm.style.display = 'none';}}} else {if (!this._attachedEvents[e]) return;for (var i=0; i<this._attachedEvents[e].length; i++) {switch (typeof(this._attachedEvents[e][i])) {case 'function':this._attachedEvents[e][i](this);break;case 'string': //var ev = this._attachedEvents[e][i].replace(/__THIS__/, this);eval(this._attachedEvents[e][i]);break;default:}}}}this.numberOfAttachedEvents = function(e) {try {return this._attachedEvents[e].length;} catch (ex) {return 0;}}this._getId = function() {if (typeof(this.id) != 'undefined') return this.id;return this._objectId + "_container";}this._getInactiveStyleFilter = function() {switch (this.inactiveStyle) {case 0:return false;break;case 1:return 'progid:DXImageTransform.Microsoft.BasicImage(grayScale=1)';break;case 2:return 'progid:DXImageTransform.Microsoft.BasicImage(opacity=.3)';break;default:return 'progid:DXImageTransform.Microsoft.BasicImage(grayScale=1) progid:DXImageTransform.Microsoft.BasicImage(opacity=.3)';}}this._getImgPath = function() {if (typeof(this.imgPath) != 'undefined') {return this.imgPath;} else if (typeof(this._buttonBar) != 'undefined') {return this._buttonBar.imgPath;} else {return this._imgPathDefault;}}this._constructor();}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -