有趣 不用js也能创建silverlight
如果你已经安装了silverlight并能在IE7或Firefox 2中运行,请直接复制下边的代码存成.htm来浏览。
silverlight只是浏览器的为了呈现xaml的一个插件,不一定非要JavaScript。
这里不是教你不用js来呈现silverlight,最重要的是这里是要你明白silverlight是怎么工作的。
当你开始看silverlight的代码时你大概会注意到到两个js的引用。
这里推荐两篇有用的文章:
http://msdn2.microsoft.com/en-us/library/bb412401.aspx
http://msdn2.microsoft.com/en-us/library/bb687962.aspx
<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>
<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