PDF Rendering in Javascript

Gestern gab es einen Artikel über einen Gameboy Color Emulator und schon lese ich bei Golem (http://www.golem.de/1106/84265.html) etwas über PDF Rendering in Javascript. Es handelt sich dabei um die Javascript Bibliothek pdf.js.Mit dieser Bibliothek kann man PDF Dokumente im Browser ohne Plugins oder dergleichen rendern. Sie ist dabei bei weitem noch nicht Feature komplett aber schon ein sehr schönes Proof of Concept. Der Quellcode ist dabei unter https://github.com/andreasgal/pdf.js zu finden.

GameBoy Color Emulator in Javascript

Es ist doch immer wieder erstaunlich was im Browser mittels Javascript alles möglich ist. Zum Beispiel ein vollständiger GameBoy Color Emulator. Zu finden ist dieser unter http://www.grantgalitz.org/gameboy/. Das ganze ist dabei Open Source wobei der Quelltext unter https://github.com/grantgalitz/GameBoy-Online verfügbar ist.

Weitere Informationen gibt es unter:
http://de.wikipedia.org/wiki/Gameboy

Per Javascript Parameter per POST an ein PHP Skript schicken

Wenn man in Javascript einem PHP Skript etwas schicken möchte so kann man dies per GET Methode machen. Das bedeutet das die Parameter an die URL des PHP Skriptes angehangen werden. Für größere Datenmengen ist die Methode POST allerdings wesentlich sinnvoller. Das Problem ist das man die Daten dann mittels eines Formulars senden muss. Das macht nicht wirklich Spaß. Einfacher geht es mit der Methode postToUrl welche ich auf Stack Overflow gefunden habe:

function postToUrl(path, params, method)
{
 method = method || "post"; // Standardmethode wird auf POST gesetzt, wenn keine andere angegeben

 var form = document.createElement("form");
 form.setAttribute("method", method);
 form.setAttribute("action", path);

 for(var key in params) {
 var hiddenField = document.createElement("input");
 hiddenField.setAttribute("type", "hidden");
 hiddenField.setAttribute("name", key);
 hiddenField.setAttribute("value", params[key]);

 form.appendChild(hiddenField);
 }

 document.body.appendChild(form);
 form.submit();
}

Die Funktion funktioniert dabei auch im allseits beliebten Internet Explorer ;)

Update: Mit dem Internet Explorer 8 macht das ganze Probleme. Die umgeschriebene Funktion mit der es in allen Browsern funktionieren sollte sieht dann so aus:

function postToUrl(path, params, method) 
{
 method = method || "post"; // Set method to post by default, if not specified.

 // The rest of this code assumes you are not using a library.
 // It can be made less wordy if you use one.
 //var form = document.createElement("select");
 var form = document.createElement("form");
 form.setAttribute("method", method);
 form.setAttribute("action", path);

 for(i=0; i<params.length; i++)
 {
 var key=i;
 
 var hiddenField = document.createElement("input");
 hiddenField.setAttribute("type", "hidden");
 hiddenField.setAttribute("name", key);
 hiddenField.setAttribute("value", params[key]);

 form.appendChild(hiddenField);
 }

 document.body.appendChild(form);    // Not entirely sure if this is necessary
 form.submit();
 return false;
}

Weitere Informationen gibt es unter:
http://stackoverflow.com/questions/133925/javascript-post-request-like-a-form-submit

Ein Druckbutton auf einer Webseite einfügen

Manchmal möchte man einen Druckbutton zu einer Webseite hinzufügen, zum Beispiel um Pop Ups einer Webseite auszudrucken. Dort kommt man nämlich meist nicht an die Menüs des Browsers heran. Aussehen könnte das ganze dann z.B. so:

<form>
<input style="border: 0; cursor: pointer; background-color: transparent; 
  background-image: url(button.png); background-repeat: no-repeat; width: 32px; height: 32px;" 
  onclick="javascript:window.print()" type="button" />
</form>

Weitere Informationen gibt es unter:
http://www.web-toolbox.net/webtoolbox/diverses/seite-drucken.htm

SSH Client für den Browser

Manchmal hat man das Problem das man einen SSH Client benötigt, aber nur einen Browser (in diesem Fall ein Firefox) zur Verfügung hat. Genau für dieses Fall gibt es nun FireSSH. Dabei handelt es sich um einen SSH Client welcher vollständig in Javaskript geschrieben wurde. Zu finden ist FireSSH dabei unter http://firessh.mozdev.org/. Der Client installiert sich als AddOn im Firefox und kann dann nach einem Neustart benutzt werden.

Weitere Informationen gibt es unter:
http://www.golem.de/1103/82332.html