Detroit Lions - Logo History (2024)

Stories, Photos, Videos, Podcasts, and Publications featuring Detroit Lions Logo History

F i l t e r & S o r t Filter & Sort

'+tableLegend; } else { return '

Showing ' + total + ' of ' + max + ' records.
Change filters or adjust season slider to modify results.
Click on column headings to sort table.

'+tableLegend;} } , fnFooterCallback: function ( nRow, aaData, iStart, iEnd, aiDisplay ) { //cant get actual 2+ row footers to work below or elsewhere, so just using
on footer results var api = this.api(); $('tr:eq(1) th:eq(3)', api.table().footer()).html((34)); $('tr:eq(1) th:eq(4)', api.table().footer()).html((53)); $('tr:eq(1) th:eq(5)', api.table().footer()).html((12)); // var secondRow = $(nRow).next()[0]; // var nCells = secondRow.getElementsByTagName('th'); // nCells[1].innerHTML = 55; // nCells[2].innerHTML = 47.01; // console.log(nCells); }, // ========================================================== // Functions that automatically calculate sum/average/etc on footer of each column // // each column's class attribute is tagged as to what type of subtotal should be calculated // ========================================================== drawCallback: function () { //sums the footer values var api = this.api(); var ct=0; //index counter var rowCt=0; //count number of rows in particular column var seaCt=0; //number of seasons visible //counts the rows in first column and shows as ## Totals api.columns('.tot', { page: 'current' }).every(function () { var sum = this .data() .reduce(function (a, b) { if (b!='') { ct++; } return ''; }, 0); seaCt = ct; ct=0; //console.log('=='+sum+'/'+ct+'/'+seaCt); // Update footer of first column if (seaCt>1 && !0) { //season totals and average $(this.footer()).html(seaCt+"
" ); }else if (seaCt>1 ) { $(this.footer()).html(seaCt+" " ); }else{ $(this.footer()).html(seaCt+" " ); } }); // ============================================================ // Calculate Averages on columns that are already averages by grabbing data // from other column Totals // e.g. FG%, Batting Average, SLG, etc // ============================================================ // call from each page , for example: // var colclass = '.3Ppct-calc' // var numerFld = '3Ptot:name' // var denomFld = '3PAtot:name' // var sigfig = 1 // var decPct = 100 // var strip0 = true //strip leading "0." from results 0.500 -> .500 // var numerVal = parseFloat(api.column( numerFld, {page:'current'} ).data().sum(0)) // var denomVal = parseFloat(api.column( denomFld, {page:'current'} ).data().sum(0)) // customFooterVal(); function customFooterVal() { // some columns may have null stats, so cant include those in averages. // This javascript technique iterates one column at a time // So it becomes problematic to count rows in a _different_ column to get accurate averages/per-game totals. // so instead, we'll just get a ratio of the rows with/without null in _current_ column // and then multiply subtotal by that ratio to get a best estimate. // Mostly accurate unless game counts vary from season to season. // var numerCt = parseFloat(api.column( numerFld, {page:'current'} ).data().filter( function ( value, index ) {return value !='' ? true : false; } ).count()+0.00001); //counts non-nulls var denomCt = parseFloat(api.column( denomFld, {page:'current'} ).data().filter( function ( value, index ) {return value !='' ? true : false; } ).count()); //counts non=nulls var subave = ( (denomCt / numerCt) * numerVal / ( denomVal + 0.00001 ) * decPct ).toFixed(sigfig); //create footer if (numerCt<1) { subave='-'; //no stats in column }else if (strip0) { subave=subave.replace(/^(0\.)/,'.') ; //strip leading "0." from results 0.500 -> .500 } if (seaCt>1 && !0) { subave = subave + '
' + subave } jQuery( api.table().column( colclass ).footer() ).html( ( subave ) ); } // console.log('---------') // console.log ('1:'+ parseFloat(api.column( '3Ptot:name', {page:'current'} ).data().filter( // function ( value, index ) {return value !='' ? true : false; } ).count())) // console.log ('2:'+ parseFloat(api.column( '3PAtot:name', {page:'current'} ).data().filter( // function ( value, index ) {return value !='' ? true : false; } ).count())) // the sigfig and 'leading 0' are stored in database also creates // a custom class. for use in javascript calcuations of dynamic footer calculations // not currently used // ========================= // footer with sum and average // ========================= api.columns('.sumave00', { page: 'current' }).every(function () { var strip0 =0; var sigfig =0; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } sum = parseInt(sum); $(this.footer()).html(sum + ave ); }); api.columns('.sumave01', { page: 'current' }).every(function () { var strip0 =0; var sigfig =1; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } sum = parseInt(sum); $(this.footer()).html(sum + ave ); }); api.columns('.sumave02', { page: 'current' }).every(function () { var strip0 =0; var sigfig =2; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } sum = parseInt(sum); $(this.footer()).html(sum + ave ); }); api.columns('.sumave03', { page: 'current' }).every(function () { var strip0 =0; var sigfig =3; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } sum = parseInt(sum); $(this.footer()).html(sum + ave ); }); api.columns('.sumave11', { page: 'current' }).every(function () { var strip0 =1; var sigfig =1; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } sum = parseInt(sum); $(this.footer()).html(sum + ave ); }); api.columns('.sumave12', { page: 'current' }).every(function () { var strip0 =1; var sigfig =2; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } sum = parseInt(sum); $(this.footer()).html(sum + ave ); }); api.columns('.sumave13', { page: 'current' }).every(function () { var strip0 =1; var sigfig =3; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } sum = parseInt(sum); $(this.footer()).html(sum + ave ); }); // ========================= // footer with two averages // ========================= api.columns('.aveave00', { page: 'current' }).every(function () { var strip0 =0; var sigfig =0; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } $(this.footer()).html( sumAlt + ave ); }); api.columns('.aveave01', { page: 'current' }).every(function () { var strip0 =0; var sigfig =1; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } $(this.footer()).html( sumAlt + ave ); }); api.columns('.aveave02', { page: 'current' }).every(function () { var strip0 =0; var sigfig =2; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } $(this.footer()).html( sumAlt + ave ); }); api.columns('.aveave03', { page: 'current' }).every(function () { var strip0 =0; var sigfig =3; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } $(this.footer()).html( sumAlt + ave ); }); api.columns('.aveave11', { page: 'current' }).every(function () { var strip0 =1; var sigfig =1; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } $(this.footer()).html( sumAlt + ave ); }); api.columns('.aveave12', { page: 'current' }).every(function () { var strip0 =1; var sigfig =2; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } $(this.footer()).html( sumAlt + ave ); }); api.columns('.aveave13', { page: 'current' }).every(function () { var strip0 =1; var sigfig =3; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } $(this.footer()).html( sumAlt + ave ); }); //these two should be obsolete, but keeping them here for legacy purposes api.columns('.aveave', { page: 'current' }).every(function () { var strip0 =1; var sigfig =1; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } $(this.footer()).html( sumAlt + ave ); }); //these two should be obsolete, but keeping them here for legacy purposes api.columns('.sumave', { page: 'current' }).every(function () { var strip0 =1; var sigfig =1; var sum = this .data() .reduce(function (a, b) { var x = parseFloat($(''+a+'').text()) || 0; //encase it so html is always stripped var y = parseFloat($(''+b+'').text()) || 0; if (y!='') { ct++; } return x + y; }, 0); var rowCt = ct; ct=0; // Update footer if (rowCt==0) { sum='-'; sumAlt='-'; }else{ sum = parseFloat(sum).toFixed(4) sumAlt = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) if (strip0==1){ sumAlt = sumAlt.replace(/^(0\.)/,'.'); } } if (rowCt==0 && seaCt>1 && !0*1) { ave = '
-'; }else if (seaCt>1 && !0*1) { ave = parseFloat(sum/(rowCt+.000001)).toFixed(sigfig) ; if (strip0==1){ ave = ave.replace(/^(0\.)/,'.'); } ave = '
'+ ave ; }else{ ave = ''; //dont show second row when there's only 1 season } sum = parseInt(sum); $(this.footer()).html(sum + ave ); }); //dont really use these anymore because two-rowed footer code above places average after the sum //other columns are autocalculated based for average or sum based on class tag // api.columns('.sumonly', { page: 'current' }).every(function (rowIdx, tableLoop, rowLoop) { // var sum = this // .data() // .reduce(function (a, b) { // var x = parseFloat(a) || 0; // var y = parseFloat(b) || 0; // return x + y; // }, 0); // //console.log(sum); // // Update footer // $(this.footer()).html(parseFloat(sum).toFixed(0) ); // }); // api.columns('.avg3', { page: 'current' }).every(function () { // var sum = this // .data() // .reduce(function (a, b) { // var x = parseFloat(a) || 0; // var y = parseFloat(b) || 0; // if (b!='') { // ct++; // } // return x + y; // }, 0); // var rowCt = ct; // ct=0; // //console.log('=='+sum+'/'+ct+'/'+rowCt); // // Update footer // $(this.footer()).html( parseFloat(sum/(rowCt+.000001)).toFixed(3).replace('0.','.') ); // }); //api.fixedHeader.adjust(); }, buttons: [ // ========================================================== // Build VIEWS dropdown menu // ========================================================== // // ========================================================== // Build SPLITS dropdown menu // ========================================================== // { // extend: 'collection', // text: " Splits", // fade: 0, // autoClose: true, // buttons: // [ // // ] // }, // ========================================================== // Build COLUMN visibility dropdown menu // ========================================================== // checkboxes at // https://infra.clarin.eu/content/libs/DataTables-1.10.4/extensions/ColVis/examples/text.html // { extend: 'colvis', fade: 0, className: 'btn-group-child pull-left', //collectionLayout: 'fixed two-column', columns: ":not(.notInMenu)", //':gt(0)', titleAttr: 'Hide/Show Columns', text: "Columns" }, // ========================================================== // Build EXPORT/SHARE dropdown menu // ========================================================== // { extend: "collection", text: "Share", fade: 0, titleAttr: 'Export Table to another location', className: 'btn-group-child', autoClose: true, buttons: [ { extend: 'copy', className: 'pullLeft', messageTop: 'RetroSeasons Data', messageBottom: "https://www.retroseasons.com/teams/detroit-lions/history/logos/", header: true, footer: true, text: "Copy/Paste", key: { key: 'c', ctrlKey: true, }, exportOptions: { columns: ':visible' }, }, { extend: 'csv', className: 'pullLeft', title: "retroseasons-teams-detroit-lions-history-logos-export", messageBottom: "https://www.retroseasons.com/teams/detroit-lions/history/logos/", messageTop: "This data was exported from https://www.retroseasons.com", text: "Download", titleAttr: 'Download Stats', header: true, footer: true, key: { key: 'x', ctrlKey: true, }, exportOptions: { columns: ':visible' }, }, // { // text: " Facebook Share", // titleAttr: 'Share Page', // }, // { // text: " Share Page", // titleAttr: 'Share Page', // }, // { // text: " Embed Table", // titleAttr: 'Embed Table', // }, ] }, // ========================================================== // Build FILTERS dropdown menu // ========================================================== // { extend: "collection", text: "Filter", autoClose: true, titleAttr: 'Filter statistics to show a subset of data', className: 'btn-group-child', fade: 0, buttons: [ // ========================================================== // FILTER paramater variables are set on each page depending on data // ========================================================== ] }, //end of collection dropdown menu ], }); //redraws header/footer on colviz changes so that its correctly formatted jQuery('#mainTable').on( 'column-visibility.dt', function ( e, settings, column, state ) { //console.log( 'Column '+ column +' has changed to '+ (state ? 'visible' : 'hidden') ); table.fixedHeader.adjust(); } ); jQuery('#mainTable').show(); // ================================================================= // draw table filtering fields to allow filtering of ranges // (this technique is then piggybacked by the range slider) // ================================================================= jQuery.fn.dataTable.ext.search.push( function( settings, data, dataIndex ) { var min = parseInt( jQuery('#slider-min').val(), 10 ); var max = parseInt( jQuery('#slider-max').val(), 10 ); var age = parseFloat( data[0] ) || 0; // use data for the age column if ( ( isNaN( min ) && isNaN( max ) ) || ( isNaN( min ) && age <= max ) || ( min <= age && isNaN( max ) ) || ( min <= age && age <= max ) ) { return true; } return false; } ); // ================================================================= // Event listener to the two range filtering inputs to redraw on input. // don't really need this anymore, since they're hidden and // i'm triggering redraw on slider but leaving it here for legacy // ================================================================= jQuery('#slider-min, #slider-max').change( function() { table.draw(); } ); // ================================================================= // Avtandil mod: throttle slide change events // ================================================================= var throttle_inst = null; var throttle = function( wait, func, options) { var context, args, result; var timeout = null; var previous = 0; if (!options) options = {}; var later = function() { previous = options.leading === false ? 0 : Date.now(); timeout = null; result = func.apply(context, args); if (!timeout) context = args = null; }; return function() { var now = Date.now(); if (!previous && options.leading === false) previous = now; var remaining = wait - (now - previous); context = this; args = arguments; if (remaining <= 0 || remaining > wait) { if (timeout) { clearTimeout(timeout); timeout = null; } previous = now; result = func.apply(context, args); if (!timeout) context = args = null; } else if (!timeout && options.trailing !== false) { timeout = setTimeout(later, remaining); } return result; }; } var update_model_throttle = function() { if (null === throttle_inst) { throttle_inst = throttle(500, function(){ demo._handleSliderChange(); }); } throttle_inst(); } // ================================================================= // Avtandil End: throttle slide change events // ================================================================= // ================================================================= // set config parameters for slider range // http://ionden.com/a/plugins/ion.rangeSlider/demo_interactions.html // ================================================================= var $range = jQuery("#slider-range"); jQuery(function () { $range.ionRangeSlider({ type: 'double', step: 1, min: 1928, max: 2021, from: 1928, to: 2021, from_min: 1928, to_min: 1928, from_max: 2021, to_max: 2021, hide_min_max: false, keyboard: false, from_shadow:true, grid: false, skin: "round", // skin: "big", force_edges: true, drag_interval: true, prettify_enabled: false ,onChange: function () { update_model_throttle(); } }); }); $('div.dataTables_filter input').addClass('focus:border-blue-500 focus:border-2'); // <-- add this line $('div.dataTables_filter input').addClass('rounded rounded-lg border border-gray-400'); // <-- add this line $('div.dataTables_filter input').addClass('text-black'); // <-- add this line // ================================================================= // change min/max input fields and redraw table when slider changes // ================================================================= $range.on("change", function () { var $this = $(this), value = $this.prop("value").split(";"); //console.log(value[0] + " - " + value[1]); document.getElementById('slider-min').value=value[0]; document.getElementById('slider-max').value=value[1]; table.draw(); }); //fixedHeader.adjust(); //breaks wordpress table.draw(); $('#crumbCell').html(''); } );

S o r t

S e a r c h

0 matches

Detroit Lions - Logo History (2024)

FAQs

What is the history of the Detroit lion logo? ›

Detroit Lions

The first logo, which debuted in 1952, depicts a football player dressed in an old-fashioned uniform and helmet, reflective of the times, riding a gold roaring lion. This logo was in place until 1960, but before then, the Lions won three of their four NFL championships.

What does the Detroit Lions new logo mean? ›

The helmet logo shows the team's 1960s logo, with a lion across a blue and silver stripe "to pay tribute to the club's heritage." It is also the first time the logo will be on a helmet. The logo is also being used as part of the team's 90th anniversary patch.

What does lion logo represent? ›

In logo design, they represent strength, power, and courage. Companies and organizations that want to project an image of authority and leadership use a lion in their logo.

Why is the Lions logo blue? ›

Richards was looking into picking a new color and Honolulu Blue was in the mix because he reportedly had taken a trip to Hawaii and wanted a shade of blue to match the Pacific Ocean. “Mr. Richards, obviously wanting to create an identity unique to the Lions, came up with these color schemes,” Keenist said.

What is the origin of the lion symbol? ›

The lion as a heraldic charge is present from the very earliest development of heraldry in the 12th century. One of the earliest known examples of armory as it subsequently came to be practiced can be seen on the tomb of Geoffrey Plantagenet, Count of Anjou, who died in 1151.

What does the lion icon mean? ›

In many cultures, the lion symbolizes strength, power, and courage, often associated with royalty and leadership. It has been a prominent symbol in heraldry, representing nobility and authority.

What is the significance of lion emblem? ›

It is based on the Lion Capital of Ashoka, a sculpture that was originally erected at the Sarnath, a place where Gautama Buddha first taught the Dharma, now in Uttar Pradesh, India. The emblem features four Asiatic lions standing back to back, symbolizing power, courage, confidence and faith.

What does the Lion Mark logo mean? ›

The Lion Mark was developed in 1988 by the British Toy & Hobby Association as a symbol of toy safety and quality for the consumer.

What does the standing lion logo mean? ›

Lions symbolise courage, nobility, strength, stateliness and justice, and of course, the lion is recognised as “king of the beasts.” A rearing lion facing forward is ready, prepared and vigilant, and his crown and sword reinforce his strength and determination.

Why do Detroit Lions wear Honolulu Blue? ›

The short answer

George Richards — who owned the Detroit radio station WJR and bought the team in the spring of 1934 — chose that name Honolulu blue because it reminded him of the ocean water he saw on a trip to Hawai'i, according to an old Lions media guide. So began a new — and blue — era for the Detroit Lions.

Did the Detroit Lions ever have a real lion mascot? ›

In college sports, many programs have live mascots on the sideline, but that tradition has never caught on in the NFL. Detroit Lions coach Dan Campbell found out why when he inquired about getting a live lion on the sideline.

What is the name of the three lions logo? ›

The English arms, and the three lions passant alone, have become one of the national symbols of England. The three lions have been extensively used in sport, and currently feature in the coats of arms of The Football Association, the England and Wales Cricket Board, and in the logo of England Boxing.

What is the origin of the three lions emblem? ›

The earliest surviving representation of an escutcheon, or shield, displaying three lions is that on the Great Seal of King Richard I (1189–1199), which initially displayed one or two lions rampant, but in 1198 was permanently altered to depict three lions passant, perhaps representing Richard I's principal three ...

What is the history of the Lions Club logo? ›

The Lions board of directors approved Blink's design in April 1920. Melvin Jones explained its meaning. The emblem, Jones said, “represents a lion facing the past with pride and the future with confidence, looking in all directions to render service."

What is the lion triangle symbol? ›

The Lion Mark was developed in 1988 by the British Toy & Hobby Association as a symbol of toy safety and quality for the consumer. The Lion Mark may only be used by BTHA members.

References

Top Articles
Latest Posts
Article information

Author: Aron Pacocha

Last Updated:

Views: 6438

Rating: 4.8 / 5 (68 voted)

Reviews: 83% of readers found this page helpful

Author information

Name: Aron Pacocha

Birthday: 1999-08-12

Address: 3808 Moen Corner, Gorczanyport, FL 67364-2074

Phone: +393457723392

Job: Retail Consultant

Hobby: Jewelry making, Cooking, Gaming, Reading, Juggling, Cabaret, Origami

Introduction: My name is Aron Pacocha, I am a happy, tasty, innocent, proud, talented, courageous, magnificent person who loves writing and wants to share my knowledge and understanding with you.