<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.stephanschlegel.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=87.180.97.65</id>
	<title>Wikizone - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.stephanschlegel.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=87.180.97.65"/>
	<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=Spezial:Beitr%C3%A4ge/87.180.97.65"/>
	<updated>2026-05-06T21:38:44Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.35.14</generator>
	<entry>
		<id>https://wiki.stephanschlegel.de/index.php?title=JavaScript_-_Snippets&amp;diff=19787</id>
		<title>JavaScript - Snippets</title>
		<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=JavaScript_-_Snippets&amp;diff=19787"/>
		<updated>2013-04-04T19:32:11Z</updated>

		<summary type="html">&lt;p&gt;87.180.97.65: /* JavaScript - HTML5 Audio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Links ==&lt;br /&gt;
[[jQuery - Snippets]]&lt;br /&gt;
&lt;br /&gt;
== Sonderzeichen in Alert-Meldungen ==&lt;br /&gt;
&lt;br /&gt;
Oft sieht man im Web sehr hässliche alert-Meldungen , in denen die Umlaute nicht korrekt dargestellt sind. Das liegt auch daran, dass unterschiedliche Betriebssystem Zeichen unterschiedlich kodieren. Damit so etwas möglichst vermieden wird, sollte man solche Meldungen mit alert(unescape(&amp;quot;...&amp;quot;)) anzeigen.&lt;br /&gt;
&lt;br /&gt;
Beispiel: &lt;br /&gt;
 alert(unescape(&amp;quot;So was d%E4mliches%21&amp;quot;));&lt;br /&gt;
&lt;br /&gt;
Zeichen	so verschlüsseln:&lt;br /&gt;
\	\\&lt;br /&gt;
&amp;quot;	\&amp;quot;&lt;br /&gt;
&amp;#039;	\&amp;#039;&lt;br /&gt;
Zeilenumbruch	\n&lt;br /&gt;
Wagenrücklauf	\r&lt;br /&gt;
(Den Unterschied zum Zeilenumbruch habe ich auch noch nicht begriffen.)&lt;br /&gt;
Tabulator	\t&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zeichen	so:&lt;br /&gt;
Ä	%C4&lt;br /&gt;
Ö	%D6&lt;br /&gt;
Ü	%DC&lt;br /&gt;
ä	%E4&lt;br /&gt;
ö	%F6&lt;br /&gt;
ü	%FC&lt;br /&gt;
ß	%DF&lt;br /&gt;
€	%u20AC&lt;br /&gt;
$	%24&lt;br /&gt;
%	%25&lt;br /&gt;
&lt;br /&gt;
Generier Tool:&lt;br /&gt;
http://www.salesianer.de/util/alert-umlaute.html&lt;br /&gt;
&lt;br /&gt;
== Teil einer Seite drucken ==&lt;br /&gt;
Old School JavaScript, sollte sich  aber relativ einfach auf jQuery übertragen lassen.&lt;br /&gt;
&lt;br /&gt;
Quelle: http://www.webstool.de/de/tipps_down_druck3.html Zugriff: 10/2011&lt;br /&gt;
&lt;br /&gt;
Mit einem einfachen JavaScript lässt sich mit relativ wenig Aufwand eine druckerfreundliche Version einer Webseite bei Bedarf erzeugen.&lt;br /&gt;
&lt;br /&gt;
Das JavaScript wird nachstehend vorgestellt:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
function ausgabe()&lt;br /&gt;
{&lt;br /&gt;
var ref = document.getElementById(&amp;quot;auswahl&amp;quot;);&lt;br /&gt;
var ausgabe;&lt;br /&gt;
// nächste Zeile öffnet ein Fenster der Größe 800 x 600 Pixel&lt;br /&gt;
ausgabe=window.open(&amp;quot;#&amp;quot;,&amp;quot;fenster&amp;quot;,&amp;quot;width=800,height=600,resizable=yes,menubar=yes,left=50,top=50&amp;quot;);&lt;br /&gt;
ausgabe.document.open();&lt;br /&gt;
ausgabe.document.write(&amp;#039;&amp;lt;html&amp;gt;\n&amp;lt;head&amp;gt;\n&amp;lt;title&amp;gt;Druckversion&amp;lt;/title&amp;gt;\n&amp;#039;);&lt;br /&gt;
ausgabe.document.write(&amp;#039;&amp;lt;meta http-equiv=&amp;quot;Content-Type&amp;quot; content=&amp;quot;text/html; charset=iso-8859-1&amp;quot;&amp;gt;\n&amp;#039;);&lt;br /&gt;
// in der nächsten Zeile an das eigene Stylesheet anpassen&lt;br /&gt;
ausgabe.document.write(&amp;#039;&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;../css/design1.css&amp;quot;&amp;gt;\n&amp;lt;/head&amp;gt;\n&amp;#039;);&lt;br /&gt;
ausgabe.document.write(&amp;#039;&amp;lt;body&amp;gt;\n&amp;lt;h1 align=&amp;quot;center&amp;quot;&amp;gt;&amp;amp;copy; web s tool - Partner f&amp;amp;uuml;r Ihren Internetauftritt&amp;lt;/h1&amp;gt;\n&amp;#039;);&lt;br /&gt;
ausgabe.document.write(&amp;#039;&amp;lt;div&amp;gt;\n&amp;#039;);&lt;br /&gt;
// Ausgabe aller Inhalte mit der id = auswahl&lt;br /&gt;
while (ref!=null)&lt;br /&gt;
{&lt;br /&gt;
ausgabe.document.write(ref.innerHTML + &amp;#039;\n&amp;#039;);&lt;br /&gt;
ref = ref.nextSibling;&lt;br /&gt;
}&lt;br /&gt;
ausgabe.document.write(&amp;#039;&amp;lt;/div&amp;gt;\n&amp;lt;p align=&amp;quot;center&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;javascript:window.print()&amp;quot;&amp;gt;drucken&amp;lt;/a&amp;gt;&amp;lt;/p&amp;gt;\n&amp;lt;/body&amp;gt;\n&amp;lt;/html&amp;gt;\n&amp;#039;);&lt;br /&gt;
ausgabe.document.close();&lt;br /&gt;
ausgabe.focus();&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Die externe Einbindung des JavaScripts erfolgt dabei z.B. im head-Bereich der Webseite über&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;script language=&amp;quot;JavaScript&amp;quot; src=&amp;quot;../scripts/ausgabe4print.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
Von entscheidender Bedeutung ist, dass auf der Seite das auszuwählende Objekt mit der id = &amp;quot;auswahl&amp;quot; (bitte bei Bedarf anpassen) versehen ist. Das auszuwählende Objekt kann dabei eine Tabelle oder ein div-Container sein.&lt;br /&gt;
&lt;br /&gt;
Der Aufruf erfolgt z.B. durch den Link &amp;lt;a href=&amp;quot;javascript:ausgabe();&amp;quot;&amp;gt; Druckversion&amp;lt;/a&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Fehler Behandlung ==&lt;br /&gt;
=== Prüfen ob ein Element existiert (normales JavaScript)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
function isElement(obj) {&lt;br /&gt;
  try {&lt;br /&gt;
    //Using W3 DOM2 (works for FF, Opera and Chrom)&lt;br /&gt;
    return obj instanceof HTMLElement;&lt;br /&gt;
  }&lt;br /&gt;
  catch(e){&lt;br /&gt;
    return (typeof obj===&amp;quot;object&amp;quot;) &amp;amp;&amp;amp;&lt;br /&gt;
      (obj.nodeType===1) &amp;amp;&amp;amp; (typeof obj.style === &amp;quot;object&amp;quot;) &amp;amp;&amp;amp;&lt;br /&gt;
      (typeof obj.ownerDocument ===&amp;quot;object&amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Eingaben Validieren ==&lt;br /&gt;
=== Handynummer validieren (normales JavaScript) ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
function phone_is_valid(nr){&lt;br /&gt;
	var reg2 = /^([0-9]{4,6})+\/([0-9]{6,11})$/;&lt;br /&gt;
	return reg2.test(nr);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Datum validieren (normales JavaScript) ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
function date_is_valid(myDate){&lt;br /&gt;
	var isValid = false;&lt;br /&gt;
	var today = new Date();&lt;br /&gt;
	if (!myDate) return false;&lt;br /&gt;
	myDate=myDate.toString();&lt;br /&gt;
	arrDate=myDate.split(&amp;quot;.&amp;quot;);&lt;br /&gt;
	if (arrDate.length!=3) return false;&lt;br /&gt;
	arrDate[0]=parseInt(arrDate[0],10);&lt;br /&gt;
	arrDate[1]=parseInt(arrDate[1],10)-1;&lt;br /&gt;
	if (arrDate[2].length==2) arrDate[2]=&amp;quot;20&amp;quot;+arrDate[2]&lt;br /&gt;
	var kontrolldatum=new Date(arrDate[2],arrDate[1],arrDate[0]);&lt;br /&gt;
	// Datum gültig ?&lt;br /&gt;
	if (kontrolldatum.getDate()==arrDate[0] &amp;amp;&amp;amp; kontrolldatum.getMonth()==arrDate[1] &amp;amp;&amp;amp; kontrolldatum.getFullYear()==arrDate[2])&lt;br /&gt;
	{&lt;br /&gt;
		// in der Zukunft&lt;br /&gt;
		if (kontrolldatum.getTime()-today.getTime()+(24*60*60*1000) &amp;gt; 0)&lt;br /&gt;
			return true; 		&lt;br /&gt;
	}&lt;br /&gt;
	return false;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Timer ==&lt;br /&gt;
Quelle: http://blog.agrafix.net/2011/10/javascript-timers-mit-jquery/&lt;br /&gt;
&lt;br /&gt;
Benötigte Funktionen sind window.setTimeout und window.setInterval&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// funktion verzögert aufrufen&lt;br /&gt;
function machWas() {&lt;br /&gt;
   alert(&amp;#039;alert() mit 1000ms verzögerung!&amp;#039;);&lt;br /&gt;
}&lt;br /&gt;
window.setTimeout(machWas, 1000);&lt;br /&gt;
 &lt;br /&gt;
// funktion alle X Millisekunden aufruden&lt;br /&gt;
function machWasOft() {&lt;br /&gt;
   alert(&amp;#039;alle 1000ms ein alert()&amp;#039;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
window.setInterval(machWasOft, 1000);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Doch was ist, wenn ich jetzt einen solchen Timer ändern oder abbrechen möchte? Das ist eigentlich auch nicht schwer – die Funktionen setTimeout/setInterval geben ein Objekt zurück über das sie sich wieder beenden lassen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
var x = 0;&lt;br /&gt;
function machWasAbbrechbarOft() {&lt;br /&gt;
    x += 1;&lt;br /&gt;
    if (x &amp;gt; 200) {&lt;br /&gt;
        window.clearInterval(running); // beende das &amp;quot;Interval&amp;quot; nach 201 Ausführungen&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
var running = window.setInterval(machWasAbbrechbarOft, 1000);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Timer mit jQuery ===&lt;br /&gt;
Für größere Projekte gibt es ein komfortableres jQuery Plugin&lt;br /&gt;
&lt;br /&gt;
Mit diesem Plugin geht das “Interval” setzen dann wie folgt:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$(document).everyTime(1000, &amp;quot;machWasOftAbbrechbar&amp;quot;, function(i) { // alle 1000ms&lt;br /&gt;
  alert(&amp;#039;Hallo ich bin der &amp;#039; + i + &amp;#039;te Aufruf!&amp;#039;); // machWasOftAbbrechbar, hier die funktion die aufgerufen werden soll&lt;br /&gt;
}, 200); // 200 mal ausführen&lt;br /&gt;
Der zweite Parameter, machWasOftAbbrechbar, stellt hierbei ein sogenanntes “label” dar, über das man den gestarten Timer dann wieder abbrechen kann:&lt;br /&gt;
&lt;br /&gt;
$(document).stopTime(&amp;quot;machWasOftAbbrechbar&amp;quot;); // stoppe machWasOftAbbrechbar&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Viel mehr gibt’s eigentlich nicht dazu zu sagen – die Dokumentation dazu findet man, genau wie das Plugin selbst, unter http://plugins.jquery.com/project/timers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== JavaScript - Objekte ==&lt;br /&gt;
[[JavaScript - Objektorientierte Programmierung]]&lt;br /&gt;
=== Objekte löschen ===&lt;br /&gt;
 for (prop in allOverlays) { if (allOverlays.hasOwnProperty(prop)) { delete allOverlays[prop]; } } //ie 6 gc problems&lt;br /&gt;
 //allOverlays = {};&lt;br /&gt;
&lt;br /&gt;
== JavaScript - Strings ==&lt;br /&gt;
[[JavaScript - Strings]]&lt;br /&gt;
&lt;br /&gt;
== JavaScript - HTML5 Audio ==&lt;br /&gt;
[[JavaScript - HTML5 Audio]]&lt;br /&gt;
&lt;br /&gt;
== JavaScript - Verschiedenes ==&lt;br /&gt;
=== Sortieren ===&lt;br /&gt;
http://www.javascriptkit.com/javatutors/arraysort.shtml&lt;/div&gt;</summary>
		<author><name>87.180.97.65</name></author>
	</entry>
</feed>