Вопрос

Я заинтересован в создании веб-сайта полностью на silverlight (личные причины), но я не хочу, чтобы людям, у которых еще нет silverlight (а их очень много), приходилось устанавливать плагин только для просмотра моего сайта.Решение, к которому я склоняюсь, состоит в том, чтобы начать с простой html / css-версии сайта и представить версию silverlight только тем, у кого она уже установлена.

Мой вопрос заключается в следующем:

Являются ли мои рассуждения ошибочными?Есть ли лучший способ сделать это?И каков наилучший способ избежать необходимости дублировать контент в обеих версиях сайта?

Это было полезно?

Решение

Во-первых, предоставление низшего уровня для пользователей без плагина Silverlight - это очень хорошая практика.Это также обеспечит лучшую SEO-оптимизацию вашего сайта.Если вы можете позволить себе использовать Silverlight 3 и ASP.NET тогда .Сервисы NET RIA - очень привлекательный вариант для повторного использования кода в Silverlight и ASP .NET.Сервисы Ria и учебные пособия доступны здесь:

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

Другие советы

Лично мне нравится изящная деградация веб-сайта.Я хочу, чтобы Silverlight был на моем сайте, но я вижу людей в Twitter, которые заходят на сайт Silverlight и говорят - я ни за что не установлю этот плагин.Так что эти люди тоже должны быть размещены.

Я писал об островах Silverlight, о том, как реализовать с помощью jQuery.Этот метод предоставляет материал для поисковой системы, он предоставляет возможность не любителям Silverlight пользоваться сайтом, и он предоставляет вам возможность наслаждаться вашим веб-сайтом так, как вы хотите.

Но это намного больше работы.http://www.faxt.com/blog/post/2008/09/Show-Multiple-Silverlight-Controls-in-the-Same-Page-with-jQuery.aspx

Выполнив быстрый поиск, я нашел эту страницу, которая может быть полезна:http://www.adefwebserver.com/DotNetNukeHELP/Misc/Silverlight/DetectSilverlight/Default.html Возможно, используя этот метод для обнаружения Silverlight, вы сможете перенаправлять пользователей Silverlight на свою реальную страницу Silverlight и / или перенаправлять других пользователей на обычную html-страницу.

Проверьте unobtrusify.com , это для ненавязчивого javascript, но рассуждения те же.

Кроме того, ознакомьтесь с блогом Скотта Гатри о том, что Silverlight не установлен:weblogs.asp.net/scottgu/archive/2007/10/30/optimizing-the-silverlight-install-experience.aspx

Если вы не хотите дублировать, я бы посоветовал использовать HTML-код в заданных тегах div и перенести их в свое приложение Silverlight, эффективно используя его как другой уровень представления.Вы можете использовать библиотеку Javascript для отображения / скрытия этого HTML-кода в зависимости от того, установлен ли такой пользователь, как Silverlight.

Это зависит от того, что вы подразумеваете под "контентом".

Если под "контентом" вы подразумеваете код, управляющий веб-сайтом, то вам нужно будет написать все дважды, и я не вижу никакого способа обойти это.

Если под "контентом" вы подразумеваете то, что представляет код, то можете сделать некоторые вещи, чтобы уменьшить дублирование.Если вы храните свой контент в известном формате, таком как XML, вы можете использовать XSLT на стороне HTML / CSS для преобразования XML в HTML для рендеринга.Затем на стороне Silverlight вы также можете проанализировать XML и отобразить его в любом формате, который вы хотите.С помощью этого метода вы просто переписываете фреймворк для отображения содержимого.

Я бы рекомендовал прочитать о Серебряная колючка, метод, разработанный McCann для управления этим типом интеграции Silverlight / XHTML.

Майкл

ну, вы могли бы использовать Flash, тогда у 99,9% ваших посетителей будет этот плагин.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top