📄 functions.js
字号:
// 'zipped' option has been checked if (theAction == 'zip' && formElts['zip'].checked) { if (!formElts['asfile'].checked) { theForm.elements['asfile'].checked = true; } if (typeof(formElts['gzip']) != 'undefined' && formElts['gzip'].checked) { theForm.elements['gzip'].checked = false; } if (typeof(formElts['bzip']) != 'undefined' && formElts['bzip'].checked) { theForm.elements['bzip'].checked = false; } } // 'gzipped' option has been checked else if (theAction == 'gzip' && formElts['gzip'].checked) { if (!formElts['asfile'].checked) { theForm.elements['asfile'].checked = true; } if (typeof(formElts['zip']) != 'undefined' && formElts['zip'].checked) { theForm.elements['zip'].checked = false; } if (typeof(formElts['bzip']) != 'undefined' && formElts['bzip'].checked) { theForm.elements['bzip'].checked = false; } } // 'bzipped' option has been checked else if (theAction == 'bzip' && formElts['bzip'].checked) { if (!formElts['asfile'].checked) { theForm.elements['asfile'].checked = true; } if (typeof(formElts['zip']) != 'undefined' && formElts['zip'].checked) { theForm.elements['zip'].checked = false; } if (typeof(formElts['gzip']) != 'undefined' && formElts['gzip'].checked) { theForm.elements['gzip'].checked = false; } } // 'transmit' option has been unchecked else if (theAction == 'transmit' && !formElts['asfile'].checked) { if (typeof(formElts['zip']) != 'undefined' && formElts['zip'].checked) { theForm.elements['zip'].checked = false; } if ((typeof(formElts['gzip']) != 'undefined' && formElts['gzip'].checked)) { theForm.elements['gzip'].checked = false; } if ((typeof(formElts['bzip']) != 'undefined' && formElts['bzip'].checked)) { theForm.elements['bzip'].checked = false; } } return true;} // end of the 'checkTransmitDump()' function/** * This array is used to remember mark status of rows in browse mode */var marked_row = new Array;/** * enables highlight and marking of rows in data tables * */function PMA_markRowsInit() { // for every table row ... var rows = document.getElementsByTagName('tr'); for ( var i = 0; i < rows.length; i++ ) { // ... with the class 'odd' or 'even' ... if ( 'odd' != rows[i].className && 'even' != rows[i].className ) { continue; } // ... add event listeners ... // ... to highlight the row on mouseover ... if ( navigator.appName == 'Microsoft Internet Explorer' ) { // but only for IE, other browsers are handled by :hover in css rows[i].onmouseover = function() { this.className += ' hover'; } rows[i].onmouseout = function() { this.className = this.className.replace( ' hover', '' ); } } // ... and to mark the row on click ... rows[i].onmousedown = function() { var unique_id; var checkbox; checkbox = this.getElementsByTagName( 'input' )[0]; if ( checkbox && checkbox.type == 'checkbox' ) { unique_id = checkbox.name + checkbox.value; } else if ( this.id.length > 0 ) { unique_id = this.id; } else { return; } if ( typeof(marked_row[unique_id]) == 'undefined' || !marked_row[unique_id] ) { marked_row[unique_id] = true; } else { marked_row[unique_id] = false; } if ( marked_row[unique_id] ) { this.className += ' marked'; } else { this.className = this.className.replace(' marked', ''); } if ( checkbox && checkbox.disabled == false ) { checkbox.checked = marked_row[unique_id]; } } // ... and disable label ... var labeltag = rows[i].getElementsByTagName('label')[0]; if ( labeltag ) { labeltag.onclick = function() { return false; } } // .. and checkbox clicks var checkbox = rows[i].getElementsByTagName('input')[0]; if ( checkbox ) { checkbox.onclick = function() { // opera does not recognize return false; this.checked = ! this.checked; } } }}window.onload=PMA_markRowsInit;/** * marks all rows and selects its first checkbox inside the given element * the given element is usaly a table or a div containing the table or tables * * @param container DOM element */function markAllRows( container_id ) { var rows = document.getElementById(container_id).getElementsByTagName('tr'); var unique_id; var checkbox; for ( var i = 0; i < rows.length; i++ ) { checkbox = rows[i].getElementsByTagName( 'input' )[0]; if ( checkbox && checkbox.type == 'checkbox' ) { unique_id = checkbox.name + checkbox.value; if ( checkbox.disabled == false ) { checkbox.checked = true; if ( typeof(marked_row[unique_id]) == 'undefined' || !marked_row[unique_id] ) { rows[i].className += ' marked'; marked_row[unique_id] = true; } } } } return true;}/** * marks all rows and selects its first checkbox inside the given element * the given element is usaly a table or a div containing the table or tables * * @param container DOM element */function unMarkAllRows( container_id ) { var rows = document.getElementById(container_id).getElementsByTagName('tr'); var unique_id; var checkbox; for ( var i = 0; i < rows.length; i++ ) { checkbox = rows[i].getElementsByTagName( 'input' )[0]; if ( checkbox && checkbox.type == 'checkbox' ) { unique_id = checkbox.name + checkbox.value; checkbox.checked = false; rows[i].className = rows[i].className.replace(' marked', ''); marked_row[unique_id] = false; } } return true;}/** * Sets/unsets the pointer and marker in browse mode * * @param object the table row * @param integer the row number * @param string the action calling this script (over, out or click) * @param string the default background color * @param string the color to use for mouseover * @param string the color to use for marking a row * * @return boolean whether pointer is set or not */function setPointer(theRow, theRowNum, theAction, theDefaultColor, thePointerColor, theMarkColor){ var theCells = null; // 1. Pointer and mark feature are disabled or the browser can't get the // row -> exits if ((thePointerColor == '' && theMarkColor == '') || typeof(theRow.style) == 'undefined') { return false; } // 1.1 Sets the mouse pointer to pointer on mouseover and back to normal otherwise. if (theAction == "over" || theAction == "click") { theRow.style.cursor='pointer'; } else { theRow.style.cursor='default'; } // 2. Gets the current row and exits if the browser can't get it if (typeof(document.getElementsByTagName) != 'undefined') { theCells = theRow.getElementsByTagName('td'); } else if (typeof(theRow.cells) != 'undefined') { theCells = theRow.cells; } else { return false; } // 3. Gets the current color... var rowCellsCnt = theCells.length; var domDetect = null; var currentColor = null; var newColor = null; // 3.1 ... with DOM compatible browsers except Opera that does not return // valid values with "getAttribute" if (typeof(window.opera) == 'undefined' && typeof(theCells[0].getAttribute) != 'undefined') { currentColor = theCells[0].getAttribute('bgcolor'); domDetect = true; } // 3.2 ... with other browsers else { currentColor = theCells[0].style.backgroundColor; domDetect = false; } // end 3 // 3.3 ... Opera changes colors set via HTML to rgb(r,g,b) format so fix it if (currentColor.indexOf("rgb") >= 0) { var rgbStr = currentColor.slice(currentColor.indexOf('(') + 1, currentColor.indexOf(')')); var rgbValues = rgbStr.split(","); currentColor = "#"; var hexChars = "0123456789ABCDEF"; for (var i = 0; i < 3; i++) { var v = rgbValues[i].valueOf(); currentColor += hexChars.charAt(v/16) + hexChars.charAt(v%16); } } // 4. Defines the new color // 4.1 Current color is the default one if (currentColor == '' || currentColor.toLowerCase() == theDefaultColor.toLowerCase()) { if (theAction == 'over' && thePointerColor != '') { newColor = thePointerColor; } else if (theAction == 'click' && theMarkColor != '') { newColor = theMarkColor; marked_row[theRowNum] = true; // Garvin: deactivated onclick marking of the checkbox because it's also executed // when an action (like edit/delete) on a single item is performed. Then the checkbox // would get deactived, even though we need it activated. Maybe there is a way // to detect if the row was clicked, and not an item therein... // document.getElementById('id_rows_to_delete' + theRowNum).checked = true; } } // 4.1.2 Current color is the pointer one else if (currentColor.toLowerCase() == thePointerColor.toLowerCase() && (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])) { if (theAction == 'out') { newColor = theDefaultColor; } else if (theAction == 'click' && theMarkColor != '') { newColor = theMarkColor; marked_row[theRowNum] = true; // document.getElementById('id_rows_to_delete' + theRowNum).checked = true; } } // 4.1.3 Current color is the marker one else if (currentColor.toLowerCase() == theMarkColor.toLowerCase()) { if (theAction == 'click') { newColor = (thePointerColor != '') ? thePointerColor : theDefaultColor; marked_row[theRowNum] = (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum]) ? true : null; // document.getElementById('id_rows_to_delete' + theRowNum).checked = false; } } // end 4 // 5. Sets the new color... if (newColor) { var c = null; // 5.1 ... with DOM compatible browsers except Opera if (domDetect) { for (c = 0; c < rowCellsCnt; c++) { theCells[c].setAttribute('bgcolor', newColor, 0); } // end for } // 5.2 ... with other browsers else { for (c = 0; c < rowCellsCnt; c++) { theCells[c].style.backgroundColor = newColor; } } } // end 5 return true;} // end of the 'setPointer()' function/* * Sets/unsets the pointer and marker in vertical browse mode * * @param object the table row * @param integer the column number * @param string the action calling this script (over, out or click) * @param string the default background color * @param string the color to use for mouseover * @param string the color to use for marking a row * * @return boolean whether pointer is set or not * * @author Garvin Hicking <me@supergarv.de> (rewrite of setPointer.) */function setVerticalPointer(theRow, theColNum, theAction, theDefaultColor1, theDefaultColor2, thePointerColor, theMarkColor) { var theCells = null; var tagSwitch = null; // 1. Pointer and mark feature are disabled or the browser can't get the // row -> exits if ((thePointerColor == '' && theMarkColor == '') || typeof(theRow.style) == 'undefined') { return false; } if (typeof(document.getElementsByTagName) != 'undefined') { tagSwitch = 'tag'; } else if (typeof(document.getElementById('table_results')) != 'undefined') { tagSwitch = 'cells'; } else { return false; } // 2. Gets the current row and exits if the browser can't get it if (tagSwitch == 'tag') { theRows = document.getElementById('table_results').getElementsByTagName('tr'); theCells = theRows[1].getElementsByTagName('td'); } else if (tagSwitch == 'cells') { theRows = document.getElementById('table_results').rows; theCells = theRows[1].cells; } // 3. Gets the current color... var rowCnt = theRows.length; var domDetect = null; var currentColor = null; var newColor = null; // 3.1 ... with DOM compatible browsers except Opera that does not return // valid values with "getAttribute" if (typeof(window.opera) == 'undefined' && typeof(theCells[theColNum].getAttribute) != 'undefined') { currentColor = theCells[theColNum].getAttribute('bgcolor'); domDetect = true; } // 3.2 ... with other browsers else { domDetect = false; currentColor = theCells[theColNum].style.backgroundColor; } // end 3 var c = null; // 4. Defines the new color // 4.1 Current color is the default one if (currentColor == '' || currentColor.toLowerCase() == theDefaultColor1.toLowerCase() || currentColor.toLowerCase() == theDefaultColor2.toLowerCase()) { if (theAction == 'over' && thePointerColor != '') { newColor = thePointerColor; } else if (theAction == 'click' && theMarkColor != '') { newColor = theMarkColor; marked_row[theColNum] = true; } } // 4.1.2 Current color is the pointer one else if (currentColor.toLowerCase() == thePointerColor.toLowerCase() && (typeof(marked_row[theColNum]) == 'undefined' || !marked_row[theColNum]) || marked_row[theColNum] == false) { if (theAction == 'out') { if (theColNum % 2) { newColor = theDefaultColor1; } else { newColor = theDefaultColor2;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -