我正在尝试学习 Dojo 1.9,之前使用过 1.4.x。一直在看一些教程,并尝试了 dojox/mobile/EdgeToEdgeList 的一些示例。我只是似乎不明白。
从http://dojotoolkit.org/reference-guide/1.9/dojox/mobile/EdgeToEdgeList.html复制示例代码后,他们使用 CDN 托管的 dojo 工具包进行了声明性(CSS sprite 示例)。然而,除了带有 3 个项目符号的默认 HTML 无序列表,没有显示任何内容,样式为 dojo 移动样式。Chrome 和 FF 22.0 浏览器中的行为相同。我看到没有网络或控制台错误,只是似乎没有加载。我怀疑我在某个地方遗漏了一些东西。我需要在某处指定 onLoad 属性吗?
这是我的示例 HTML:
<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
<title>
MyTitle
</title>
<meta content="" name="description" />
<meta content="" name="keywords" />
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=no"/>
<meta name="apple-mobile-web-app-capable" content="yes" />
<!--[if lt IE 9]> <script src="//html5shiv.googlecode.com/svn/trunk/html5.js" type="text/javascript"></script><![endif]-->
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.9.1/dojox/mobile/deviceTheme.js"></script>
</head>
<body>
<header>
<h1>
My Title
</h1>
<nav>
<ul>
<li>
<a href="/">Home</a>
</li>
</ul>
</nav>
</header>
<!-- load Dojo -->
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.9.1/dojo/dojo.js"
data-dojo-config="async: true"></script>
<script>
require([
"dojox/mobile",
"dojox/mobile/parser"
]);
</script>
<ul data-dojo-type="dojox/mobile/EdgeToEdgeList"
data-dojo-props='iconBase:"all-icons.png"'>
<li data-dojo-type="dojox/mobile/ListItem"
data-dojo-props='iconPos:"0,0,29,29"'>Airplane Mode
<div class="mblItemSwitch" data-dojo-type="dojox/mobile/Switch"></div></li>
<li data-dojo-type="dojox/mobile/ListItem"
data-dojo-props='iconPos:"0,29,29,29",
rightText:"mac",
href:"test_IconContainer.html"'>Wi-Fi</li>
<li data-dojo-type="dojox/mobile/ListItem"
data-dojo-props='iconPos:"0,58,29,29",
rightText:"AcmePhone",
moveTo:"general"'>Carrier</li>
</ul>
</body>
</html>