当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 对WebUI技术感兴趣的说

Javascript
javaScript 数值型和字符串型之间的转换
从父页面读取和操作iframe中内容方法
IE DOM实现存在的部分问题及解决方法
jqPlot Option配置对象详解
jquery JSON的解析方式
JavaScript 捕获窗口关闭事件
xml 封装与解析(javascript和C#中)
JavaScript 设计模式学习 Singleton
JavaScript 设计模式学习 Factory
javascript CSS画图之基础篇
JavaScript 获取事件对象的注意点
JavaScript Konami Code 实现代码
Google Map API更新实现用户自定义标注坐标
JavaScript this 深入理解
javascript EXCEL 操作类代码
window.parent调用父框架时 ie跟火狐不兼容问题
关于取不到由location.href提交而来的上级页面地址的解决办法
JS input 数字验证代码
网页全屏显示代码说明分析
JS 学习笔记 防止发生命名冲突

Javascript 中的 对WebUI技术感兴趣的说


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-10   浏览: 364 ::
收藏到网摘: n/a

Not(Not pleased by external gains, Not saddened by personnal losses.)
MSN:[email protected]

你想知道WebUI可以做到哪种境界?
你想不想试试用脚本开发Web程序(就像开发Windows的程序那样)
如果你的回答是肯定的,那么我告诉你一个好东西:Bindows

什么是Bindows
Bindows™ is a Graphical User Interface Toolkit for writing rich client side web applications with the look, feel and behavior of modern Windows™ applications. Bindows applications are lightweight applications with zero footprint which means no installation required.

To view Bindows™ in action view one of the samples or try out the forum. 

获取Bindows
http://www.i-see.net/bindows 

看看用Bindows开发出来的东西
http://www.i-see.net/bindows/documentation/samples/

如何使用Bindows
As is often common, we start of with the classic Hello World example. This example application shows how to create and add a text label.

The application code

var label = new BiLabel("Hello World");
label.setPadding(5);
application.getWindow().add(label);

The first thing we do is to create a new label object with the text "Hello World". Then we set the padding to 5 (default is 0). Finally we get the BiApplicationWindow object and adds the label to that.

The Application Description File

All applications in Bindows™ are defined by an XML file. This XML file is often referred to as the Application Description File or ADF for short. The ADF can be seen as the entry point to the application.  There is a naming convention for the application class name and the XML file name. If the application class name is HelloWorld then the XML file name must be HelloWorld.xml (or HelloWorld.extension).

Creating the Application Class

Once the file HelloWorld.xml is loaded the static method HelloWorld.main is called. Therefore we create a class with a static method called main. The main method just creates a new instance of the HelloWorld application.

// define constructor

function HelloWorld() {

   var label = new BiLabel("Hello World");

   label.setPadding(5);

   application.getWindow().add(label);

}

 

// define static main method

HelloWorld.main = function () {

   new HelloWorld();

};

Creating the XML

The above JavaScript code needs to be located inside a script block in the Application Description File.

<?xml version="1.0"?>

 

<application>

   <window caption="Hello World" width="300" height="200"/>

   <resources>

      <script><![CDATA[

 

// define constructor

function HelloWorld() {

   var label = new BiLabel("Hello World");

   label.setPadding(5);

   application.getWindow().add(label);

}

 

// define static main method

HelloWorld.main = function () {

   new HelloWorld();

};

 

      ]]></script>

   </resources>

</application>

View this XML file in your browser

The XML above contains two sections, the window element, which describes how large the window should be and the resources element which contains the application code inside a script element.

Launching the Application

We have now defined everything that is needed for a simple application but there is one more thing to do and that is to tell the web browser how to launch the application. This can be done in basically two different ways.

Using the Launcher Script

The easiest way to do this is most likely to use the bilauncher.js file provided in the html/js/ directory. This file provides a function called biExec which executes the application. First include the js file:

<script type="text/javascript"

   src="../../html/js/bilauncher.js"></script>

Then you can call the biExec function like this:

biExec('../../html', 'HelloWorld.xml');

The first argument points to the root directory of the Bindows™ toolkit (relative URI) and the second argument is the relative URI to the Application Description File.

To create a link that calls this use the following:

<a href="#" onclick="biExec('../../html', 'HelloWorld.xml');

   return false;">Launch HelloWorld.xml</a>

Launch HelloWorld.xml

Troubleshooting

The location and the relative paths are important. If you get an error message saying that "Object expected" then make sure that the bilauncher.js file is found from the current page.

If you get an error message saying "File not found" then the path to the ADF is not correct. The path to the ADF is relative to the current page. You can also use an absolute URL for this.

If a new window is opened but saying "The page cannot be displayed" the path to the Bindows system root is incorrect. The path to the Bindows system root is relative to the current page. You can also use an absolute path if you find these more convenient.

The paths given in the examples on this page are set up so that if you download the Bindows framework you'll be able to run the samples given in the samples/helloworld/ directory inside the zip file.

Create a new HTML file

When you are using the launcher described above the browser will navigate to html/bimain.html and then load the ADF. You can also create a new HTML page and start your ADF from that. The main reason to do it this way is that allows you to have an HTML page as the entry point to the application. To do this you can copy the content of bimain.html and modify it accordingly:

<!-- Back Compat -->

 

<html xmlns:v>

<head>

<title>Hello World</title>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<meta http-equiv="MsThemeCompatible" content="yes">

<link type="text/css" rel="StyleSheet" href="../../html/css/bimain.css">

<script type="text/javascript"

   src="../../html/js/application.js"></script>

</head>

<body>

 

<script type="text/javascript">application.start("../../html",

   "HelloWorld.xml");</script>

 

</body>

</html>

View this HTML file in your browser

The first argument to application.start is the URI to the Bindows™ toolkit root directory and the second is the URI to the ADF.

Troubleshooting

Once again the paths are important. If you get an error saying "appliction is undefined" then the application.js file was not correctly included. Make sure that the path from the current page to the application.js file is correct. The path to the js file is relative to the HTML file. You can also use an absolute path if you find these more convenient.

If you get several errors saying "Error loading file" and then the file names make sure that the first argument to application.start is the relative path to the Bindows system directory. You can also use an absolute path if you find these more convenient.

If you get an error saying "Error loading ADF" then the ADF XML file could not be found using the path relative the current page. Make sure that the path to the XML is correct (giving the location of the current page, or use an absolute URL).

 

如果你也和我一样对此激动不已,那我再告诉你一个网址:http://webfx.eae.net,爱好DHTML技术的朋友别告诉我你不知道它!