Win10系列:JavaScript综合实例2

在项目中添加一个名为pages的文件夹,并在pages文件夹里面再添加一个名为mainPage的文件夹,接着在mainPage文件夹里添加一个"页面控制"项,命名为mainPage,添加完成之后会同时生成mainPage.html、mainPage.css和mainPage.js这三个文件。

这里将mainPage.html作为应用程序的主页面,打开mainPage.html文件,在body元素中添加一个div元素,并在元素内部添加一个h1元素和一个ListView控件,其中h1元素用于显示页面的标题,ListView控件用于按类别显示菜肴。然后再在body元素中添加两个Template控件,分别用于格式化显示类别名称和菜肴。在用于显示类别名称的Template控件中放置一个p元素,并在p元素内部指定onclick事件由函数WinJS.Navigation.navigate处理。这样当单击某个类别的名称时,就会导航到相应的分类页面。在用于格式化显示菜肴的Template控件中添加一个用来显示菜肴图片的img控件和一个用来显示菜肴名称的h3元素,相关代码如下所示:

<body>

<div class="fragment mainPage">

<header aria-label="Header content" role="banner">

<h1 class="titlearea win-type-ellipsis">

<!--定义页面标题-->

<span class="pagetitle">菜谱</span>

</h1>

</header>

<!--定义ListView控件-->

<div class="groupeditemslist" aria-label="List of groups" data-win-control="WinJS.UI.ListView" data-win-options="{selectionMode: ‘multi‘}"></div>

</div>

<!--用于显示类别名称的模板-->

<div class="headerTemplate" data-win-control="WinJS.Binding.Template">

<p class="group-title win-type-x-large" data-win-bind="textContent: title; groupKey: key" onclick="WinJS.Navigation.navigate(‘/pages/classDetail/classDetail.html‘, { groupKey: event.srcElement.groupKey })"></p>

</div>

<!--用于显示菜肴的模板-->

<div class="multisizebaseitemtemplate" data-win-control="WinJS.Binding.Template">

<img class="item-image" src="#" data-win-bind="src: backgroundImage; alt: title" />

<div class="item-overlay">

<h3 class="item-title" data-win-bind="textContent: title"></h3>

</div>

</div>

</body>

为了控制应用程序整体的外观,在default.css文件中定义一些页面样式,相关代码如下所示:

/*页面的基本样式*/

#contenthost {

height: 100%;

width: 100%;

}

/* 定义包含header和section的布局*/

.fragment {

-ms-grid-columns: 1fr;

-ms-grid-rows: 128px 1fr;

display: -ms-grid;

height: 100%;

width: 100%;

}

/*设置页面头部的布局*/

.fragment header[role=banner] {

-ms-grid-columns: 120px 1fr;

-ms-grid-rows: 1fr;

display: -ms-grid;

}

/* 进一步设置后退按钮的样式*/

.fragment header[role=banner] .win-backbutton {

margin-left: 39px;

margin-top: 59px;

}

.fragment header[role=banner] .titlearea {

-ms-grid-column: 2;

margin-top: 37px;

}

/* 进一步设置页面标题的样式*/

.fragment header[role=banner] .titlearea .pagetitle {

width: calc(100% - 20px);

}

/*设置页面中section元素的样式*/

.fragment section[role=main] {

-ms-grid-row: 2;

height: 100%;

width: 100%;

}

时间: 2024-10-06 09:08:41

Win10系列:JavaScript综合实例2的相关文章

Win10系列:JavaScript综合实例1

上面几个小节讲解了使用HTML5和JavaScript语言开发Windows 应用商店应用时会用到的一些技术,本小节将前面介绍的知识融合在一起创建一个菜谱应用程序,帮助读者更进一步地理解和掌握这些知识. 此菜谱应用程序主要的功能是介绍一些菜肴和主食的做法,其中包含三个页面:第一个页面为主页面,用于按类别显示一些菜肴和主食:第二个页面为分类页面,显示某个类别的信息和属于该类别的菜肴或主食:第三个页面为菜肴页面,显示某项菜肴或主食的详细信息,如名称.图片和具体做法.这三个页面可以相互跳转,例如,在主

Win10系列:JavaScript综合实例4

实现主页面和分类页面的之后,最后来看一下菜肴页面的实现,这个页面用于详细介绍某项菜肴或主食,如名称.图片和具体做法等.在pages文件夹里面添加一个名为foodDetail的文件夹,并在foodDetail文件夹里添加一个"页面控制"项,将其命名为foodDetail. 打开默认生成的foodDetail.html文件,向文件的body元素中添加一个div元素,在div元素内部添加一个button元素和一个h1元素,其中button元素是回退按钮,h1元素用于显示类别名称,接着再在此d

Win10系列:JavaScript 控件的使用

向页面中添加的控件可分为两种类型:标准的HTML控件和WinJS库控件.其中标准的HTML控件是指HTML标准中定义的基本控件,如按钮和复选框:WinJS库控件是为开发基于JavaScript 的Windows应用商店应用提供的新控件,如ListView.HtmlControl和PageControl等.下面首先介绍如何添加这两种类型的控件,然后介绍如何为控件注册事件处理函数和设计控件的样式. (1)添加标准的HTML控件 向页面中添加标准的HTML控件可以通过定义相应的HTML元素来实现.例如

Win10系列:JavaScript页内导航

页内导航是在一个页面内根据需要加载其他页面的内容,在开发基于JavaScript的Windows应用商店应用时,可以使用WinJS.Navigation.navigate函数传递要加载的页面地址并使用PageControlNavigator控件加载其他页面的内容.WinJS.Navigation.navigate函数以一个包含页面地址的对象为参数,在该函数执行时将触发WinJS.Navigation.onnavigated事件并把页面地址传递给该事件.PageControlNavigator控件

Win10系列:JavaScript 模板绑定

WinJS库模板提供了一种格式化显示多条数据的便捷方式,通过这种方式可以将模板与ListView或FlipView等控件结合使用以控制数据的显示格式.定义一个WinJS库模板的方法与定义WinJS库控件的方法相似:在页面中添加一个div元素,将div元素的data-win-control属性设置为WinJS.Binding.Template.定义WinJS库模板以后,需要在Win10系列:JavaScript 模板绑定

Win10系列:JavaScript 动画1

在应用程序中使用动画会使应用显得更加生动,进而给用户带来良好的视觉效果.例如,当用户将某个项添加到列表时,新项不会立即出现在列表中,而是采用动画形式到达相应位置,并且列表中的其他项也采用动画形式移动到新位置,以便为添加的项腾出空间.这样的动画效果能够让用户更清晰地看到变化过程,而不是只能看到变化之后的结果. 应用程序的动画效果可以使用Windows动画库来创建,开发人员无需自己编写动画效果代码即可获得Metro风格的动画外观和效果.另外还可以通过设置页面元素的style对象的相关属性来创建.下面

Win10系列:JavaScript多媒体

布局好前台界面后,下面来应用的后台逻辑功能.打开default.js文件,在文件中的"args.setPromise(WinJS.UI.processAll());"语句后添加如下代码,为"打开"按钮注册click事件处理函数,相关代码如下所示: document.getElementById("pickFileButton").addEventListener("click", pickFile); 代码调用getEleme

Win10系列:JavaScript页面导航

页面导航是在开发应用的过程中使用频率较高的技术,其中比较常用的导航方式有多页导航和页内导航,采用多页导航方式的应用程序包含一系列的页面,在一个页面中加入另一个页面的链接地址后,单击链接将跳转到指定页面,从而实现页面之间的导航.而页内导航方式是在一个页面内根据需要加载其他页面,使用页内导航方式的应用程序仍然包含一系列的页面,不同的是,这些页面是顺序被加载到一个选定的页面区域中,而不是从一个页面跳转到另一个页面.在传统的网站开发中,通常使用多页导航的方式,在开发基于JavaScript的Window

前端代码编码和设计规范系列——JavaScript编程规范

1文档信息 条目 内容 项目编号 通用 项目名称 通用 标题 JavaScript编程规范 类别 规范文档 当前 试用草稿 摘要 当前版本 V1.0 日期 2015/11/9 作者 徐维坚(xuweijian) 文档拥有者 内部公开 文件 前端规范系列-JavaScript篇.docx 2修改历史 编号 修订人 修订内容简述 修订 日期 修订前 版本号 修订后 版本号 V0001 徐维坚 编程规范文件编写,草稿试用版公布 2015/11/10 V1.0 规范前言 良好的编程规范对于软件的开发与维