Posts Tagged ‘ Javascript

Schummelt Microsoft im Browser-Benchmark?

Wer hat den besten schnellsten Browser? Alle Jahre wieder – oder besser mit jedem Release einer neuen Version – beschäftigen sich die Browser-Hersteller mit dieser Frage. Als Testkriterien haben sich in der Vergangenheit dabei drei Testverfahren als Maßstab etabliert:

Und genau bei dem letzten Test, Suns SunSpider JavaScript Benchmark, soll der Softwareriese aus Redmond im siebten Plattform Preview des Internet Explorer 9 getrickst haben. Fakt oder Fiktion?

Fakt ist, schon kurz nach dem Release hat Microsoft vermelden lassen, der Browser sei in Sachen JavaScript-Geschwindigkeit der Konkurrenz weit überlegen. Grundlage dafür war das Ergebnis des JavaScript-Benchmark SunSpider.

Fakt ist auch, dass der Mozilla-Entwickler Rob Sayre durch minimale Modifikationen an einem Test in SunSpider massive Auswirkungen auf die benötigte Rechenzeit im IE9 erzeugen konnte. Chrome oder Opera ließ diese Modifikation dagegen absolut kalt. Laut Microsoft verwende der IE9 “Dead Code Eliminiation”, einen Kompilierungstrick, der durch die Modifikation des Mozilla-Entwickler ausgeschaltet wurde – was Sayre als “unzuverlässig und unvollständig” bezeichnet.

Willkommen mitten im Browser-Krieg – aber irgendwie ist man das ja schon gewohnt … es ändern sich nur ständig die Kontrahenten.

Aber wer hat denn nun den schnellsten? Schaut man sich im Web mal ein wenig um, so findet man schnell heraus, dass es bei den aktuellen Browsern keinen wirklichen Gewinner in Sachen JavaScript-Geschwindigkeit gibt. Alle aktuellen (Beta)Browser schlagen sich sehr gut – mit Ausnahme vielleicht vom IE8 und FireFox 3.x … aber auch dort zeigen die Betas der kommenden Versionen von Mozilla und Microsoft ebenfalls eindeutige Verbesserungen.

[via digitizor]

GoogleDriver – mit dem Auto durch GoogleMaps

Schon klasse, was man mit GoogleMaps so alles anfangen kann. Die Java- und Flashentwickler von phatfusion lassen den User auf GoogleDrive mit einem kleinen Auto GoogleMaps erkunden. Mittels eines Input-Feldes kann man sich sogar die Stadt seiner Wahl in die Applikation laden und so anstatt durch London durch München oder Hamburg düsen – bzw. durch jede andere in GoogleMaps verfügbare Stadt:

googledrive

… nur gut, dass die Unfälle, die man dort baut, rein virtuell sind … ansonsten wäre ich nach den ersten 2 km schon längst meinen Führerschein los – von den Punkten in Flensburg einmal ganz abgesehen ;)

Browser resizing mal ganz anders

Wenn Webseiten per JavaScript das Browserfenster verkleinern, ist das ja in der Regel eher nervig als alles andere. Die Webseite von Circoripopolo ist allerdings eine sehenswerte und amüsante Ausnahme, halt “Browser resizing mal ganz anders”.

ASP.NET 1. 1 – DefaultButton definieren

In ASP.NET 2.0 gibt es die Methode HtmlForm.DefaultButton, mit der man den DefaultButton eines Formularelements festlegen kann. Sehr nützlich wenn man ein Formular mit mehreren Buttons erstellt hat und der Benutzer durch drücken der ENTER-Taste auf einem Input-Feld eine Aktion auslösen soll wie z.B. verschiedene Suchoptionen. Leider bietet ASP.NET 1.1 keine Funktion dieser Art.

Bei kamp-hansen.dk bin ich auf einen Lösungsansatz gestoßen, der zwar leider in VB und nur für den IE gebaut wurde, aber im Grunde ist der Lösungsweg nicht schlecht. Der “C#-Way” sollte dann in etwas so aussehen:

public void DefaultButton(System.Web.UI.Page Page,
                                  System.Web.UI.WebControls.TextBox objTextControl,
                                  System.Web.UI.WebControls.Button objDefaultButton){

System.Text.StringBuilder sScript = new System.Text.StringBuilder();

sScript.Append("<script language=\"javascript\">");
sScript.Append("function GetKeyCodeIE(btn){");
sScript.Append("    if (event.keyCode == 13)");
sScript.Append("    { ");
sScript.Append("        event.returnValue=false;");
sScript.Append("        event.cancel = true;");
sScript.Append("        btn.click();");
sScript.Append("     } " );
sScript.Append(" } ");

sScript.Append(" function GetKeyCodeRest (Ereignis) { ");
sScript.Append("    if (!Ereignis) ");
sScript.Append("        Ereignis = window.event; ");
sScript.Append("    if (Ereignis.which) { ");
sScript.Append("           Tastencode = Ereignis.which; ");
sScript.Append("    } else if (Ereignis.keyCode) { ");
sScript.Append("           Tastencode = Ereignis.keyCode; ");
sScript.Append("    } ");
sScript.Append("     if (Tastencode == 13)");
sScript.Append("        document.getElementById(‘" + objDefaultButton.ClientID + "’).click();");
sScript.Append("} ");

sScript.Append(" var IE = document.all ? true : false;");
sScript.Append(" if (!IE){");
sScript.Append("   document.onkeydown = GetKeyCodeRest;");
sScript.Append("}");
sScript.Append("</script>");

objTextControl.Attributes.Add("onkeydown",
                                          "GetKeyCodeIE( document.all." + objDefaultButton.ClientID + ")");
Page.RegisterStartupScript("ForceDefaultToScript", sScript.ToString());
}

Der Aufruf erfolgt dann mittels

DefaultButton(Page,txtSearch,btnSearch)

Ok, ganz glücklich bin ich mit dieser Lösung auch nicht – einige werden mir da sicherlich zustimmen – , aber “auf die Schnelle” ein durchaus akzeptabler Ansatz.

54 Prozent der Deutschen nutzen das Web 2.0

Laut Nielsen//NetRatings nutzen 54 Prozent der Deutschen das Web 2.0 bzw. Dienste die unter dieses Buzzwort fallen. Dienste wie YouTube, Wikipedia und MySpace machen dabei knapp 39% der Gesamtsumme aus, Blogger bzw. Blogs sind mit 11% und Portale sowie Communities mit insgesamt 35% vertreten.

Eine stolze Summe wie ich mein, aber im Gegenzug finde ich die Tatsache, dass das

[...] BSI zur Abschaltung aktiver Inhalte wie Javascript und ActiveX auf dem Rechner rät und an die Hersteller appelliert, bei Rechnern und Programmen im Auslieferungszustand anders als heute üblich möglichst alle Sicherheitsvorkehrungen eingeschaltet zu lassen. [... SPON]

umso verwunderlicher. Zugegeben, aktive Inhalte sind Hauptverursacher von Infektionen im WWW, aber dann gleich die krasse Notbremse ziehen halte ich doch etwas für übertrieben. In erster Linie sollten doch Entwickler dazu angehalten werden, Ihre Software/Server so weit wie Möglich abzusichern und vielleicht nicht sofort die erste Beta-Versionen ihrer Entwicklungen auf die Netzwelt los zulassen.

Auch der User ist gefragt und sollte einfach mal lernen, wie man sich im Internet bewegt – Stichwort Internet-Führerschein – dann hätten es Programmierer von Viren, Würmern und Co. nicht ganz so einfach.

Alles abschalten was eventuell gefährlich sein könnte, ist auf jeden Fall nicht die beste Methode, wir fahren schließlich auch mit dem Auto, obwohl wir nicht ausschließen können, das uns, ob nun durch Eigen- oder Fremdverschulden, etwas passieren kann.

Und mal ehrlich, was wäre das Web 2.0 ohne AJAX? Klar, Web 2.0 ist mehr als nur eine Programmiertechnik, aber neben sozialen Netzwerken oder Weblogs, Wikis und Co. dennoch ein großer Teil des selbigen.

[Quelle: Nielsen//NetRatings]

SWFObject – Javascript Flashdetection

Da der Download von Adobes Flash Detection Kit schon seit Wochen nicht mehr funktioniert, habe ich mich auf die Suche nach einem “würdigen” Ersatz gemacht. Im Blog von deconcept bin ich dann fündig geworden:

Die kleine Javascript Flashdetection “SWFObject” von deconcept wurde unter der MIT License veröffentlicht und bringt alles mit, was man von einer guten Flashdetection erwarten kann. Sie erkennt das Flash-Plugin in allen großen Browser Versionen und lässt sich, auch dank diverser Beispiele, extrem leicht in die eigene Seite einpflegen. Auch bügelt sie das lästigen IE/ActiveX Problem mit aktivem (embedded) Content aus.

Fazit: Eine Flashdetection, die wirklich zu gebrauchen ist und eine echte Alternative zum Flash Detection Kit von Adobe.