Windows 8 JavaScript Metro应用程序--入门(上)

Windows 8 JavaScript Metro应用程序--入门(上)

 

如你所知的Windows8允许你通过以下几种方式创建Metro应用程序:

  • C++
  • C# 
  • JavaScript

第一部分将侧重于主体结构和JavaScript Grid 应用程序的基础,在随后的文章中我将深度探究在Windows8中更多的功能。

第一步:基础知识

当你写Windows8 JavaScript风格的应用时,你可能需要学习一点WinJS和在Windows 8 JavaScript应用中可用的基本动作。我看到了关于Windows 8 Javascript应用程序集成JQuery的文章,其实这是没有必要的,WinJS已经提供了许多这些:

  • 选择器:
    • document.querySelector(".headerTemplate")
    • document.querySelectorAll("div")
  • 文本 
    • document.querySelector(“#Title”).textContent; 
  • 动画:
    • WinJS.UI.Animation.fadeIn(document.querySelector(“div”));

更多

第二步:Application Styles

当你在Visual Studio 11中打开一个新的JavaScript Metro应用,你可以从以下选择:

 

  • Blank Application 空白Windows Metro应用的项目,没有预定义的控件或布局。

 

 

  • Split Application – 一个两个页面Windows metro风格应用的项目,在分组项目导航。第一页允许组的选择,而旁边的第二台显示器所选的项目的详细项目清单。

 

  • Fixed Layout Application 一个可扩展固定宽高比布局的Windows metro风格应用的项目

 

  • Navigation Application 一个有预定义导航控件的Windows metro风格应用项目

 

  • Grid Application – 一个多页的、项目组之间导航的Windows Metro风格的应用程序。专用页面显示组合项目的详细信息。

 

 

这个Demo中我创建了一个新的 Grid Application: 

 

 第三步: 项目结构

在以前Visual Studio 11Windows8的版本是JS文件夹里面有所有的WinJS文件,在最新的版本种所有的必要文件在两个主要文件中,参考下:

  • base.js
  • ui.js

在上面创建的 Grid Application 你将有三个页面:

  • groupDetailsPage
  • groupedItemsPage
  • itemDetailsPage

请注意,每个HTML页都有自己的CSSJavaScript文件,它们没有命名约定自动接受这些并结合,但关于如何创建Windows 8 JavaScript应用程序、规范或应用程序,这是最好的做法。

 

第四步:应用程序流程 

一切从default.html开始,这个页面加载所有必需的js文件、css文件和使用PageControlNavigator 导航应用程序到groupedItemsPage 

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4     <meta charset="utf-8">
 5     <title>Application1</title>
 6  
 7     <!-- WinJS references -->
 8     <link href="//Microsoft.WinJS.0.6/css/ui-dark.css" rel="stylesheet">
 9     <script src="//Microsoft.WinJS.0.6/js/base.js"></script>
10     <script src="//Microsoft.WinJS.0.6/js/ui.js"></script>
11  
12     <!-- Application1 references -->
13     <link href="/css/default.css" rel="stylesheet">
14     <script src="/js/data.js"></script>
15     <script src="/js/navigator.js"></script>
16     <script src="/js/default.js"></script>
17 </head>
18 <body>
19     <div id="contenthost" 
20          data-win-control="Application1.PageControlNavigator" 
21         data-win-options="{home: '/html/groupedItemsPage.html'}"></div>
22 </body>
23 </html>

 

 

The groupedItemsPage 加载相关的JS/CSS文件

 

 1  <title>groupedItemsPage</title>
 2     
 3     <!-- WinJS references -->
 4     <link href="//Microsoft.WinJS.0.6/css/ui-dark.css" rel="stylesheet">
 5     <script src="//Microsoft.WinJS.0.6/js/base.js"></script>
 6     <script src="//Microsoft.WinJS.0.6/js/ui.js"></script>
 7     
 8     <link href="/css/default.css" rel="stylesheet">
 9     <link href="/css/groupedItemsPage.css" rel="stylesheet">
10     <script src="/js/data.js"></script>
11     <script src="/js/groupedItemsPage.js"></script>

 

 

这个流程适用于你加载每个页面。

 

 

Windows 8 JavaScript Metro应用程序--入门(下)(待续)

 

 

 

posted on 2012-03-04 01:20 李明杨 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/lmyhao/archive/2012/03/04/2378940.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/434632.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何构建自己的SIP SERVER!

如果你下载了 sip phone, 自己又做了一个 SIP SERVER,那么你就可以当老大了&#xff0c;不要什么MSN&#xff0c;QQ的语音通话了&#xff0c;自己就可以直接同你想要的人通话了。1&#xff1a;软件准备&#xff1a;A: SIP SERVER http://www.brekeke.com/en/download/idx_sipse…

mac java版本 不一致_mac实现不同版本的jdk切换

之前使用jdk11进行java开发(纯粹因为喜欢新版?)但是使用jdk11在布署hadoop伪分布时各种报错, 所以还是下载jdk8回来.接下来就是mac端切换两个版本的jdk(按照网上找的方式好像有bug-文章最后再说.虽然不知道怎么解决,但是至少我可以成功部署hadoop, 所以这里就先忽略)首先下载j…

Meld安装

Ubuntu下文件/目录对比的软件Meld可能有很多用户还不是很熟悉&#xff0c;下文就给大家介绍如何安装Meld和移植到Gedit下。具体内容如下所述。 Meld允许用户查看文件、目录间的变化。很容易移植到Gedit下&#xff0c;方便用户使用。 安装Meld Meld默认在Ubuntu官方源中&#…

[译]预留位置队列PRQueue:多线程程序中消息输入队列和消息输出队列保持同序...

译自&#xff1a; http://accu.org/var/uploads/journals/overload101.pdf 在多线程应用程序中&#xff0c;要求消息输入队列和消息输出队列顺序要求保持一致&#xff0c;而忽略多线程并发处理的顺序&#xff0c;这种情况是比较难处理的。在本文中&#xff0c;作者设计了一种新…

java 前端工作内容_java前端、java后端、java全栈工作主要内容是什么?哪个薪资高?...

摘要最近&#xff0c;听了一场关于java全栈工程师职位的简介说明&#xff0c;里面很清楚的说明了一下前端&#xff0c;后端&#xff0c;全栈都是做什么工作的。其实&#xff0c;想做这个行业&#xff0c;就应该了解职能以及技能需求&#xff0c;这样学习才能更高效。我知道一些…

OpenGL ES 2.0 for iPhone Tutorial

来源&#xff1a;http://www.raywenderlich.com/3664/opengl-es-2-0-for-iphone-tutorial If youre new here, you may want to subscribe to my RSS feed or follow me on Twitter. Thanks for visiting! Learn how to use OpenGL ES 2.0 from the ground up! OpenGL ES is th…

java种子填充_种子填充实例运行出问题

种子填充实例运行出问题import java.awt.*;import java.applet.*;import java.awt.image.ImageProducer;import java.awt.image.MemoryImageSource;import java.util.Stack;public class scanseed extends Applet {private static final long serialVersionUID 1L;int redColo…

java幂等性原理_Java接口幂等性设计原理解析

在微服务架构下&#xff0c;我们在完成一个订单流程时经常遇到下面的场景&#xff1a;一个订单创建接口&#xff0c;第一次调用超时了&#xff0c;然后调用方重试了一次在订单创建时&#xff0c;我们需要去扣减库存&#xff0c;这时接口发生了超时&#xff0c;调用方重试了一次…

java web Jersey_使用CXF和Jersey框架来进行Java的WebService编程

CXFCXF是在xfire的基础上实现的。1)首先呢&#xff0c;还是包的问题&#xff0c;在http://cxf.apache.org/download.html这里可以下到最新版的CXF&#xff0c;当然&#xff0c;我用的是最新版的。接下来还是那句废话&#xff0c;建WEB项目&#xff0c;放入JAR包。而JAR包我们就…

S3C2440与SDRAM的地址连线分析

S3C2440有27根地址线ADDR[26:0]&#xff0c;8根片选信号ngcs0-ngcs7,对应bank0-bank7&#xff0c;当访问bankx的地址空间&#xff0c;ngcsx引脚为低电平&#xff0c;选中外设。 2^272^7 * 2^10 * 2^10 128Mbyte 8*128Mbyte 1Gbyte 所以S3C2440总的寻址空间是1Gbyte。 市面…

java方法有excel实现_Java实现EXCEL操作(1)

Java实现EXCEL操作(1)1、实现方法&#xff1a;现在有三种方法去实现&#xff1a;jxl 、poi 、 FastExcel&#xff1a;97~2003在这里只讲poi实现方法。poi的包可以去Apache官网上去下载&#xff1a;http://poi.apache.org/download.html2、poi实现【1】低版本的导入导出方法&…

maven生成javadoc【原创】

1.命令模式&#xff1a; mvn javadoc:javadoc 2.eclipse下&#xff1a; 转载于:https://www.cnblogs.com/caiyuanzai/archive/2012/03/30/2425780.html

S3C2440_MMU

MMU,全称Memory Manage Unit, 中文名——存储器管理单元。 许多年以前&#xff0c;当人们还在使用DOS或是更古老的操作系统的时候&#xff0c;计算机的内存还非常小&#xff0c;一般都是以K为单位进行计算&#xff0c;相应的&#xff0c;当时的程序规模也不大&#xff0c;所以 …

某单位会java_Java核心API -- 4(日期类)

1. Date类(Java.utilDate)java.util.Date类用于封装日期及时间信息&#xff0c;一般仅用它显示某个日期&#xff0c;不对他作任何操作处理&#xff0c;作处理用Calendar类&#xff0c;计算方便。//创建一个Date实例&#xff0c;默认的构造方法创建的日期代表当前系统时间Date d…

java阴阳师抽卡概率_《阴阳师》公布抽卡概率!看到数字我哭了

随着《文化部关于规范网络游戏运营加强事中事后监管工作的通知》(以下简称“通知”)的正式生效&#xff0c;网游与手游似乎也迎来了一个全新的时代&#xff0c;除了我们之前关注的游戏帐号实名制认证之外&#xff0c;道具的合成以及氪金抽卡概率问题也非常值得玩家注意&#xf…

JAVA中返回值为字母时_LeetCode#524通过删除字母匹配到字典里最长单词-java中CompareTo方法用法以及Comparator中Compare方法返回值...

import java.util.Collections;import java.util.Comparator;import java.util.List;/*524. 通过删除字母匹配到字典里最长单词给定一个字符串和一个字符串字典&#xff0c;找到字典里面最长的字符串&#xff0c;该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止…

关于JS中的constructor与prototype

在学习JS的面向对象过程中&#xff0c;一直对constructor与prototype感到很迷惑&#xff0c;看了一些博客与书籍&#xff0c;觉得自己弄明白了&#xff0c;现在记录如下&#xff1a; 我们都知道&#xff0c;在JS中有一个function的东西。一般人们叫它函数。比如下面的代码&…

resolv.conf

文件/etc/resolv.conf配置DNS客户&#xff0c;它包含了主机的域名搜索顺序和DNS服务器的地址&#xff0c;每一行应包含一个关键字和一个或多个的由空格隔开的参数。下面是一个例子文件&#xff1a; search mydom.edu.cnnameserver 210.34.0.14nameserver 210.34.0.2合法的参数及…

C# 温故而知新:Stream篇(六)

C# 温故而知新&#xff1a;Stream篇&#xff08;六&#xff09; BufferedStream 目录&#xff1a; 简单介绍一下BufferedStream如何理解缓冲区&#xff1f;BufferedStream的优势从BufferedStream 中学习装饰模式    如何理解装饰模式    再次理解下装饰模式在Stream中的…

HDU 3306 Another kind of Fibonacci

题意&#xff1a;A(0) 1 , A(1) 1 , A(N) X * A(N - 1) Y * A(N - 2) (N > 2)&#xff1b;给定三个值N&#xff0c;X&#xff0c;Y求S(N):S(N) A(0)2 A(1)2……A(n)2。 思路&#xff1a;原来我们讲的斐波那契数列是&#xff1a; F(0) 1, F(1) 1, F(N) F(N - 1) F(N…