www.®olandsee.net

... all kinds of stuff

Firefox 3 und Silverlight

by rolosee 8. September 2008 12:56

Nach dem Update meines Firefox-Browsers auf die aktuelle 3er Version mußte ich überrascht feststellen, dass die kleine Silverlight 1.0 Applikation auf meiner Website nicht mehr funktionierte. Stattdessen bot mir der Browser das "Get Microsoft Silverlight" Logo an. Auch eine erneute Installation des Plugins in den Versionen 1 und 2 brachte keine Änderung des Verhaltens.

 

Im Netz bin ich in diversen Foren, Blogs und Newsseiten auf den Hinweis gestoßen, dass ein Konflikt mit der Datei "silverlight.js" vorliegt (Info auf Entwickler.com, Info von Tim Heuer). Demnach muss die bisherige "silverlight.js" durch die Version aus dem Microsoft Silverlight Software Developement Kit Beta 2 ersetzt werden und damit sollten die Probleme im FF 3 behoben sein. Nun gut, wenn dass die Lösung bietet, dann ist es den Download des SDK mit ca. 55 MB schon mal wert.

Das File sollte sich nach der Installation des SDK in folgendem Ordner befinden:

 

Die aktuelle Scriptdatei hat einen fast doppelt so großen Dateiumfang, was auf etliche Erweiterungen hinweist.

Ein Versuch hat gezeigt, dass der Tausch des JavaScript Files tatsächlich die Silverlight Applikation wieder zum Leben erweckt.

Currently rated 3.0 by 2 people

  • Currently 3/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Silverlight - WPF | Microsoft | JavaScript

Visual Studio 2008 und JavaScript Intellisense

by rolosee 30. November 2007 08:34

Das brandneue Visual Studio 2008 von Microsoft bietet dem bisher leidgeplagten JavaScript - Entwickler einige hervorragende Neuerungen. Diese betreffen in erster Linie das Intellisense für diese Skriptsprache.

  • Allgemeines Intellisense für Javascript in der VS2008 IDE
  • Zusätzlich Intellisense für Microsoft Javascript Extensions (z.B. für ASP.NET Ajax, sobald der ScriptManager auf einer Seite eingebunden ist)
  • Das Intellisense gilt auch für includete .js files (bzw. für die dort enthaltenen Funktionen)
  • Ein Highlight stellt meines Erachtens die neue XML strukturierte und casesensitive Kommentarsyntax dar, wie man sie z.B. von C# her kennt.
    Das kann z.B. so aussehen:
        function alertDayAndDate(day,date)
       {
            ///<sumary>Function that alerts day and date</sumary>
            ///<param name="day" type="string">The day as string</param>
            ///<param name="date" type="string">The date as string formatted 19.04.2008</param>
   
            var strDay = day;
            var strDate = date;
   
            alert('Tag: '+strDay+ ' Datum: '+strDate);
        }
 
 


Auch beim JavaScript-Debugging gibt es Neuerungen. Das ist jedoch ein Beitrag für sich.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: ,

Visual Studio | Ajax | JavaScript

JavaScript in Masterpages mit ASP.NET 2.0

by rolosee 15. November 2007 10:59

Im Zusammenhang mit dem Einbinden des Virtual Earth Map Control 6.0 in eine Testseite bin ich über ein kleines, aber feines Problem gestolpert.
Von meiner Testseite aus, die von der Masterpage abgeleitet ist und folglich keinen eigenen Body hat, muss ich auf den Body meiner Masterpage zugreifen und dort per onload ein JavaScript aufrufen. Über den nachfolgend geschilderten Weg ist das ohne Probleme möglich.

Einzufügen im codeBehind meiner Testseite:

private HtmlGenericControl myBody;
protected void Page_Load(object sender, EventArgs e)
{
  myBody = (HtmlGenericControl)Page.Master.FindControl("MyBody");
  if (myBody.Attributes["onload"] != null)
    myBody.Attributes["onload"] += "GetMap();";
  else
    myBody.Attributes.Add("onload", "GetMap();");
}

Es wird über FindControl und über die ID der Body ermittelt. Falls dieser schon ein Onload-Attribut besitzt, wird die JavaScript-Funktion GetMap() an bestehende Skripten angefügt. Ansonsten wird es als alleiniges Skript angefügt.

Allerdings konnte es so auf Anhieb nicht funktionieren. Es erschien folgende Fehlermeldung:

Ausnahmedetails: System.NullReferenceException: Object reference not set to an instance of an object.

Warum? Der Body konnte aus einem einfachen Grund nicht ermittelt werden.

Das "runat=server" fehlt in meinem Body-Tag.
Mit <body id="MyBody" runat="server"> funktionierte der Mechanismus.

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , ,

ASP.NET | JavaScript

Ermitteln der Silverlight Plugin Version per JavaScript

by rolosee 5. October 2007 22:58

Der nachfolgende JS-Codeschnippsel, den ich im Blog von Nikhil Kothari entdeckt habe, eignet sich sehr gut, um die Anwesenheit des Silverlight-Plugins zu checken. Falls es vorhanden ist, werden die Infos "Silverlight/1.0" oder "Silverlight/1.1", ansonsten "(not set)" ausgegeben.

<script type="text/javascript">

function onLoad() { var version = getSilverlightVersion();
//alert('version: '+version);
spanInfoSilverlightPlugIn.innerHTML = version;
}

function getSilverlightVersion() {
  var version = '';
  var container = null;
  try {

    var control = null;
    if (window.navigator.userAgent.indexOf('MSIE') >= 0) {control =
    new ActiveXObject('AgControl.AgControl');
  }

  else {
    if (navigator.plugins['Silverlight Plug-In']) {container = document.createElement('div');
    document.body.appendChild(container);

    container.innerHTML= '<embed type="application/x-silverlight" src="data:," />';
    control = container.childNodes[0];
    }
  }

if (control) {
  if (control.isVersionSupported('1.1')) { version = 'Silverlight/1.1'; }

  else if (control.isVersionSupported('1.0')) { version = 'Silverlight/1.0'; }
  }
}

catch (e) { }if (container) {
  document.body.removeChild(container);
  }
return version;
}
</script>

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Silverlight - WPF | JavaScript

Powered by BlogEngine.NET 1.1.0.7
ASP.NET Version: 2.0.50727.3053

der Autor

Roland See Roland See
Senior Software Developer bei JobScout24.
Wickendorf, Oberfranken, Deutschland.

E-Mail Send mail

Letzte Beiträge

Disclaimer

Bei den in diesem Blog ausgedrückten Meinungen handelt es sich ausschließlich um meine persönlichen Ansichten.

© Copyright 2008

einloggen