Silverlight que degrada a html
-
22-08-2019 - |
Pergunta
Estou interessado na criação de um site inteiramente em Silverlight (motivos pessoais), mas eu não quero que as pessoas que ainda não têm o Silverlight (um bom muitos) ter que instalar um plugin só para ver o meu site. A solução que eu estou inclinado para é começar com uma versão html flat / css do site e apresentar a versão do Silverlight apenas para pessoas que já têm instalado.
A minha pergunta é esta:
É o meu raciocínio equivocado. Existe uma maneira melhor de fazer isso. E qual é a melhor maneira de evitar ter de conteúdo duplicado em ambas as versões do site.
Solução
Em primeiro lugar, proporcionando uma experiência de nível inferior para usuários sem Silverlight plugin é uma prática muito boa. Ele também irá proporcionar um melhor SEO para o seu site. Se você pode dar ao luxo de usar o Silverlight 3 e ASP.NET, em seguida, serviços .NET RIA é uma opção muito atraente para a reutilização de código em Silverlight e ASP .NET. serviços Ria e tutoriais estão disponíveis aqui:
Outras dicas
Eu pessoalmente gosto de degradação suave para um web site. Quero Silverlight no meu site, mas eu vejo as pessoas no Twitter que vêm para um site Silverlight e dizer - nenhuma maneira eu vou instalar esse plug-in. Então, essas pessoas devem ser acomodados também.
Eu escrevi sobre Ilhas Silverlight, como implementar usando JQuery. Este método fornece material motor de pesquisa, ele fornece uma maneira para os amantes não-Silverlight para usar o site, e fornece uma maneira para que você possa desfrutar do seu web site como desejar.
Mas é muito mais trabalho. http://www.faxt.com/blog/post/2008/09/Show-Multiple-Silverlight-Controls-in-the-Same-Page-with-jQuery.aspx
Fazendo uma rápida pesquisa eu encontrei esta página que pode ser útil: http://www.adefwebserver.com/DotNetNukeHELP/Misc/Silverlight/ DetectSilverlight / Default.html Talvez usando esse método para detectar Silverlight você pode redirecionar os usuários com Silverlight para sua página Silverlight real e / ou redirecionar outros usuários para uma página html regular.
Confira unobtrusify.com, é para javascript discreto, mas o mesmo raciocínio mantém-se.
Além disso, confira o blog de Scott Guthrie em não ter o Silverlight instalado: weblogs.asp.net/scottgu/archive/2007/10/30/optimizing-the-silverlight-install-experience.aspx
Se você não deseja duplicar, eu diria que tem o código HTML em determinadas tags div e puxar aqueles em sua aplicação Silverlight, efetivamente usá-lo como uma camada de apresentação diferente. Você pode usar uma biblioteca JavaScript para exibir / ocultar que o HTML com base em se um usuário como o Silverlight instalado.
Depende do que você entende por "conteúdo".
Se por "conteúdo" quer dizer o código dirigindo o site, então você está indo para necessidade de escrever tudo duas vezes e eu não vejo nenhuma maneira de contornar isso.
Se por "conteúdo" você quer dizer o que o código está apresentando, em seguida, pode fazer algumas coisas para reduzir a duplicação. Se você armazenar seu conteúdo em um formato conhecido como XML, você pode usar XSLT no lado do HTML / CSS para transformar o XML em HTML para renderização. Em seguida, no lado do Silverlight também é possível analisar o XML e exibi-lo em qualquer formato desejado. Com essa técnica, você está apenas reescrever a estrutura para exibir o conteúdo.
Eu recomendaria leitura sobre Silverspine , uma técnica desenvolvida pela McCann para gerir este tipo de integração Silverlight / XHTML.
Michael
Bem, você poderia usar o Flash, em seguida, 99,9% de seus visitantes terão a plugin.