Vorlage:Literatur nachschlagen: Unterschied zwischen den Versionen

Aus Open Source Ecology - Germany
Zur Navigation springen Zur Suche springen
(CSS: Abfrageformular ausblenden beim Drucken)
(→‎Entwicklung: Beim Drucken leere Spalten verbergen)
 
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 156: Zeile 156:
 
</div> --><!-- Ende DEBUG -->
 
</div> --><!-- Ende DEBUG -->
 
Tabellenergebnis:
 
Tabellenergebnis:
<div style="max-height:400px; overflow-y:scroll" class="Literatur-Ergebnistabelle">{{#ask: {{#var: ask_query_Kategorie_Literatur}}
+
<div style="max-height:400px; overflow-y:scroll" id="Literatur_Tabellenergebnis" class="Literatur-Ergebnistabelle">{{#ask: {{#var: ask_query_Kategorie_Literatur}}
 
|mainlabel=Literaturschlüssel<br/>Seite
 
|mainlabel=Literaturschlüssel<br/>Seite
 
|?Titel
 
|?Titel
Zeile 227: Zeile 227:
 
   .noprint.block { display: none; }
 
   .noprint.block { display: none; }
 
   .pf-runquery-formcontent {display:none;} /* das Abfrageformular selbst */
 
   .pf-runquery-formcontent {display:none;} /* das Abfrageformular selbst */
 +
}
 +
</syntaxhighlight>
 +
 +
== Entwicklung ==
 +
 +
'''Beim Drucken leere Spalten verbergen''' – Mit folgendem JavaScript kann man leere Spalten auf <code>display:none;</code> umschalten, er ist verändert nach [https://stackoverflow.com/a/62030750 Pauls Antwort zur Frage “Removing empty column in html table using jQuery” (26. Mai 26, 2020 um 20:20 stackoverflow.com)]:
 +
<syntaxhighlight lang="javascript">
 +
function removeEmptyColumns() {
 +
  $('#Literatur_Tabellenergebnis table tr th').each(function(i) {
 +
    //select all td in this column
 +
    var tds = $(this).parents('table')
 +
      .find(`tr td:nth-child(${i + 1})`);
 +
    // check if all the cells in this column are empty
 +
    // Note: Empty strings return 'false' - trim whitespace before.
 +
    if (tds.toArray().every(td => !td.textContent.trim())) {
 +
      //hide header
 +
      $(this).hide();
 +
      //hide cells
 +
      tds.hide();
 +
    }
 +
  });
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>

Aktuelle Version vom 28. September 2023, 17:59 Uhr

Zu benutzen für Spezial:Abfrage ausführen/Literatur nachschlagen welches das Formular: Literatur nachschlagen und diese Vorlage benutzt. Es wird eine #ask Abfrage ausgeführt, die mittels Formular: Literatur nachschlagen mit Suchwörtern befüllt werden kann.

Vorlagenbeiwerte (Parameter)

|Titel=
Titel eines Literatureintrages
|Autorenschaft=
Autorenschaft eines Literatureintrages
|Herausgeberschaft=
Herausgeberschaft eines Literatureintrages (Suche: klein, GROß, Substantiviert)
|Sammelwerk=
Sammelwek/Zeitschrift eines Literatureintrages
|Jahr=
Jahr eines Literatureintrages
|Stichwort=
Stichwort eines Literatureintrages

Abhängigkeiten


CSS

@media print {
  div.Literatur-Ergebnistabelle,
  div.Literatur-Ergebnistext {
    max-height:unset!important; 
    overflow-y:unset!important;
  }
  hr.Literatur-Ergebnistext { page-break-before: always; }
  .noprint.block { display: none; }
  .pf-runquery-formcontent {display:none;} /* das Abfrageformular selbst */
}

Entwicklung

Beim Drucken leere Spalten verbergen – Mit folgendem JavaScript kann man leere Spalten auf display:none; umschalten, er ist verändert nach Pauls Antwort zur Frage “Removing empty column in html table using jQuery” (26. Mai 26, 2020 um 20:20 stackoverflow.com):

function removeEmptyColumns() {
  $('#Literatur_Tabellenergebnis table tr th').each(function(i) {
    //select all td in this column
    var tds = $(this).parents('table')
      .find(`tr td:nth-child(${i + 1})`);
    // check if all the cells in this column are empty
    // Note: Empty strings return 'false' - trim whitespace before.
    if (tds.toArray().every(td => !td.textContent.trim())) {
      //hide header
      $(this).hide();
      //hide cells
      tds.hide();
    }
  });
}