5

我有興趣完全在silverlight中創建一個網站(個人原因),但我不希望還沒有Silverlight的人(很多人)必須安裝插件才能查看我的網站。我所傾向的解決方案是從網站的html/css版本開始,並將silverlight版本僅發佈給已安裝的人員。退化爲html的Silverlight

我的問題是這樣的:

是我的推理錯誤的。有沒有更好的方法去解決這個問題。什麼是避免在兩個版本的網站上覆制內容的最佳方式。

回答

0

首先,爲用戶提供無插件Silverlight的下級的經驗是一個很好的做法。它也將爲您的網站提供更好的SEO。如果您可以負擔得起使用Silverlight 3和ASP.NET,那麼.NET RIA服務對於跨Silverlight和ASP .NET重用代碼是非常有吸引力的選擇。 RIA服務,和教程都可以在這裏:

http://code.msdn.microsoft.com/RiaServices

-6

你可以使用Flash,然後99.9%的訪問者將擁有該插件。

+0

通過Silverlight的功能看我什麼也看不見的價值除了備用語言支持,Flash無法做到,但閃光燈*硬是*有99%+的安裝基礎。如果你要學習另一種技術(html/css),並且你想要動態特性,那麼爲什麼不使用ActionScript? -5 downvote是不需要的。 – SpliFF 2009-05-19 14:39:06

0

這取決於你的意思是「內容」。

如果「內容」是指驅動網站的代碼,那麼您將需要將所有內容寫入兩次,而且我沒有看到任何解決方法。

如果「content」是指代碼呈現的內容,那麼可以做一些事情來減少重複。如果將內容以XML等已知格式存儲,則可以在HTML/CSS一側使用XSLT將XML轉換爲HTML以進行呈現。然後在Silverlight方面,您還可以解析XML並以任何您想要的格式顯示它。使用這種技術,您只需重寫框架即可顯示內容。

0

查看unobtrusify.com,這是用於不引人注意的JavaScript,但同樣的推理也成立。

此外,檢查一下Scott Guthrie的博客上安裝了Silverlight沒有:weblogs.asp.net/scottgu/archive/2007/10/30/optimizing-the-silverlight-install-experience.aspx

如果您不想重複,我會說在給定的div標籤中有HTML,並將它們放到你的Silverlight應用程序中,有效地將它用作不同的表示層。您可以使用Javascript庫來根據用戶是否安裝Silverlight來顯示/隱藏該HTMl。

2

我個人喜歡優雅的降低網站。我想在我的網站上使用Silverlight,但是我看到Twitter上的人來到Silverlight網站並說 - 我將無法安裝該插件。所以這些人也必須得到安置。

我寫了關於Silverlight Islands,如何使用JQuery實現。此方法提供了搜索引擎材料,它爲非Silverlight愛好者提供了一種使用該網站的途徑,併爲您提供了一種方法讓您隨心所欲地享受您的網站。

但它有很多工作。 http://www.faxt.com/blog/post/2008/09/Show-Multiple-Silverlight-Controls-in-the-Same-Page-with-jQuery.aspx

0

我會推薦閱讀關於SilverSpine的一篇文章,這是由McCann開發的一種技術,用於管理這種類型的Silverlight/XHTML集成。

邁克爾