打印

有趣 不用js也能创建silverlight

如果你已经安装了silverlight并能在IE7或Firefox 2中运行,请直接复制下边的代码存成.htm来浏览。


<html>
<head>
</head>
<body>
    <script type="text/xaml" id="xamlContent">
        <?xml version="1.0"?>
        <Canvas
            xmlns="http://schemas.microsoft.com/client/2007"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
          <Rectangle
            Height="200"
            Width="200"
            Stroke="Black"
            Fill="Wheat"
            StrokeThickness="5"
            RadiusX="10.0"
            RadiusY="10.0"/>
          <TextBlock Canvas.Top="100" Canvas.Left="10">
            No Javascript, wheeeee!!!
          </TextBlock>
        </Canvas>
    </script>

    <div id="controlHost">
        <object
            id="silverlightControl"
            type="application/x-silverlight"
            height="400"
            width="400">
          <param name="Source" value="#xamlContent" />
        </object>
    </div>
</body>
</html>

silverlight只是浏览器的为了呈现xaml的一个插件,不一定非要JavaScript。
这里不是教你不用js来呈现silverlight,最重要的是这里是要你明白silverlight是怎么工作的。

当你开始看silverlight的代码时你大概会注意到到两个js的引用。

    * Silverlight.js有一个功能:当访问时安全的安全的创建 silverlight。它有一个方法 - Silverlight.createObject() 它是跨浏览器工作的,并且检查你客户端是否安装了需要的silverlight版本若未安装并且浏览器支持的话就显示一个快速安装的链接。 Silverlight.js 自己本身并不做任何事情;他必须要去调用CreateSilverlight.js中的createObject()方法。

    * CreateSilverlight.js实例话控件。它设置一些属性并调用createObject()方法。如果你使用工具的话这些js会自动创建。


这里推荐两篇有用的文章:
http://msdn2.microsoft.com/en-us/library/bb412401.aspx
http://msdn2.microsoft.com/en-us/library/bb687962.aspx
本质上就是这样的
只不过通过silverlight.js可以在没有安装插件时,显示下载插件的图标和链接

谢谢楼主

我想起来我做了一件很无聊的事情

可以看看,呵呵~

 提示:您可以先修改部分代码再运行
[ 本帖最后由 Fdream 于 2008-2-26 18:06 编辑 ]
http://ooboy.net 我只是我
MSN&Mail:fdream@live.com
应该用object标签也能插入silverlight

TOP

还在为头像烦恼?还在为不能关注好友动态烦忧?快来蓝色理想家园吧!

回复 #4 llinzzi 的帖子

呵呵,是可以的,看这一段代码:
复制内容到剪贴板
代码:
a.push('<object type="application/x-silverlight" data="data:,"');
        e=">";
        i=' <param name="';
        g='" value="';
        f='" />';
        h="</object>";
    }
    a.push(' id="' + c.id + '" width="' + c.width + '" height="' + c.height + '" ' + e);
http://ooboy.net 我只是我
MSN&Mail:fdream@live.com

TOP