浏览 4137 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-09-14
这步主要是要在HTML页面中插入Silverlight.js和createSilverlight.js这两个文件的引用,并创建一个HTML元素来作为silverlight插件的宿主。 Silverlight.js是跨平台浏览所需要的一个辅助性文件,你可以在Silverlight 1.0 SDK的Tools目录找到。 首先打开HTML页面并在<head>部分添加下列标签: <script type="text/javascript" src="Silverlight.js"></script> 再创建一个空白的createSilverlight.js,我们随后会用到这个文件。在你的HTML页面中同样也添加这个脚本的引用,如下: <script type="text/javascript" src="createSilverlight.js"></script> 最后得到这样一个HTML页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <title>A Sample HTML page</title> <script type="text/javascript" src="Silverlight.js"></script> <script type="text/javascript" src="createSilverlight.js"></script> </head> <body> </body> </html> 第二步 创建HTML宿主元素和初始化段 在HTML文件中添加下面三行就可以创建用来呈现Silverlight内容的HTML宿主元素, <!-- Where the Silverlight plug-in will go--> <div id="mySilverlightPluginHost"> </div> 你可以根据需要修改<div>标记的ID。重复上面的步骤就可以在同一页面内创建多个SilverLight的实例,不过要保证ID是唯一的。 创建初始化段:在刚添加的HTML标记之后加入下面的脚本。 <script type="text/javascript"> // Retrieve the div element you created in the previous step. var parentElement = document.getElementById("mySilverlightPluginHost"); // This function creates the Silverlight plug-in. createMySilverlightPlugin(); </script> 对于页面中有多个SilverLight实例,则需重复上述步骤多次。你可以使用名称唯一的函数,或者你使用一个函数然后用唯一的ID来作为参数来创建这些实例。同时要保证每段脚本都紧跟在相关的DIV元素之后。 现在我们得到下面的html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <title>A Sample HTML page</title> <script type="text/javascript" src="Silverlight.js"></script> <script type="text/javascript" src="createSilverlight.js"></script> </head> <body> <!-- Where the Silverlight plug-in will go--> <div id="mySilverlightPluginHost"> </div> <script type="text/javascript"> // Retrieve the div element you created in the previous step. var parentElement = document.getElementById("mySilverlightPluginHost"); // This function creates the Silverlight plug-in. createMySilverlightPlugin(); </script> </body> </html> 第三步:定义创建函数来初始化插件的实例 打开第一步创建的 createSilverlight.js 并添加下面的JavaScript函数。 function createMySilverlightPlugin() { Silverlight.createObject( "myxaml.xaml", // Source property value. parentElement, // DOM reference to hosting DIV tag. "mySilverlightPlugin", // Unique plug-in ID value. { // Per-instance properties. width:'300', // Width of rectangular region of // plug-in area in pixels. height:'300', // Height of rectangular region of // plug-in area in pixels. inplaceInstallPrompt:false, // Determines whether to display // in-place install prompt if // invalid version detected. background:'#D6D6D6', // Background color of plug-in. isWindowless:'false', // Determines whether to display plug-in // in Windowless mode. framerate:'24', // MaxFrameRate property value. version:'1.0' // Silverlight version to use. }, { onError:null, // OnError property value -- // event handler function name. onLoad:null // OnLoad property value -- // event handler function name. }, null); // Context value -- event handler function name. } 这个脚本里包含许多你想定制的参数,比如插件的长宽(也可以用百分比), 包含呈现内容的XAML文件名, 是否使用Windowsless模式。 在同一页面里如果有多个Silverlight插件,则要为每一个创建一个新的函数。或者比较简单的创建一个带参数的函数,然后根据插件的ID分别调用不同的代码。 第四部 创建Silverlight呈现内容。 现在HTML文件已经配置完毕,该创建呈现内容了。 在这个HTML所在的目录下创建一个名叫"myxaml.xaml"的空白文件。如果你在上一步使用了不同的文件名,记得与之匹配。 如果SliverLight项目要进行事件处理,或者与代码动态生成,或者与用户交互,它需要一些额外的javascript脚本,并在HTML页面中添加引用。下面的例子里我们引用了一个叫my-script.js的脚本 <script type="text/javascript" src="my-script.js"></script> 整个html如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <title>A Sample HTML page</title> <script type="text/javascript" src="Silverlight.js"></script> <script type="text/javascript" src="createSilverlight.js"></script> <script type="text/javascript" src="my-script.js"></script> </head> <body> <!-- Where the Silverlight plug-in will go--> <div id="mySilverlightPluginHost"> </div> <script type="text/javascript"> // Retrieve the div element you created in the previous step. var parentElement = document.getElementById("mySilverlightPluginHost"); createMySilverlightPlugin(); </script> </body> </html> 创建多个插件须知:
每个宿主的<div>标签需要有唯一的标示。 每一段初始代码必须紧跟在对应的<div>标签之后。 每个插件的ID参数也必须是唯一的。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-09-14
silverlight刚出来的时候,到处找怎么在命令行下编译出1.1托管代码的dll,微软的quickstart都直接讲用oracs,sdk里全是VS工程文件,郁闷死了。刚去找了下,终于发现有人讲如何用csc编译了……
ps:老大,您这个不就是quickstart…… |
|
返回顶楼 | |
发表时间:2007-09-15
fyting 写道 silverlight刚出来的时候,到处找怎么在命令行下编译出1.1托管代码的dll,微软的quickstart都直接讲用oracs,sdk里全是VS工程文件,郁闷死了。刚去找了下,终于发现有人讲如何用csc编译了……
ps:老大,您这个不就是quickstart…… 对呀,quickstart 快速入门,刚花了20分钟翻译的. |
|
返回顶楼 | |