提交 feb53e8e 编写于 作者: M Minwe

example update

上级 72f9a83f
无法预览此类型文件
/*! AmazeUI - v1.0.0 | (c) 2014 AllMobilize, Inc. | @license MIT | 2014-08-05 15:08:16 */ /*! Sea.js 2.2.1 | seajs.org/LICENSE.md */
/*! AmazeUI - v1.0.0 | (c) 2014 AllMobilize, Inc. | @license MIT | 2014-08-05 18:08:12 */ /*! Sea.js 2.2.1 | seajs.org/LICENSE.md */
!function(a,b){function c(a){return function(b){return{}.toString.call(b)=="[object "+a+"]"}}function d(){return A++}function e(a){return a.match(D)[0]}function f(a){for(a=a.replace(E,"/");a.match(F);)a=a.replace(F,"/");return a=a.replace(G,"$1/")}function g(a){var b=a.length-1,c=a.charAt(b);return"#"===c?a.substring(0,b):".js"===a.substring(b-2)||a.indexOf("?")>0||".css"===a.substring(b-3)||"/"===c?a:a+".js"}function h(a){var b=v.alias;return b&&x(b[a])?b[a]:a}function i(a){var b=v.paths,c;return b&&(c=a.match(H))&&x(b[c[1]])&&(a=b[c[1]]+c[2]),a}function j(a){var b=v.vars;return b&&a.indexOf("{")>-1&&(a=a.replace(I,function(a,c){return x(b[c])?b[c]:a})),a}function k(a){var b=v.map,c=a;if(b)for(var d=0,e=b.length;e>d;d++){var f=b[d];if(c=z(f)?f(a)||a:a.replace(f[0],f[1]),c!==a)break}return c}function l(a,b){var c,d=a.charAt(0);if(J.test(a))c=a;else if("."===d)c=f((b?e(b):v.cwd)+a);else if("/"===d){var g=v.cwd.match(K);c=g?g[0]+a.substring(1):a}else c=v.base+a;return 0===c.indexOf("//")&&(c=location.protocol+c),c}function m(a,b){if(!a)return"";a=h(a),a=i(a),a=j(a),a=g(a);var c=l(a,b);return c=k(c)}function n(a){return a.hasAttribute?a.src:a.getAttribute("src",4)}function o(a,b,c){var d=S.test(a),e=L.createElement(d?"link":"script");if(c){var f=z(c)?c(a):c;f&&(e.charset=f)}p(e,b,d,a),d?(e.rel="stylesheet",e.href=a):(e.async=!0,e.src=a),T=e,R?Q.insertBefore(e,R):Q.appendChild(e),T=null}function p(a,c,d,e){function f(){a.onload=a.onerror=a.onreadystatechange=null,d||v.debug||Q.removeChild(a),a=null,c()}var g="onload"in a;return!d||!V&&g?(g?(a.onload=f,a.onerror=function(){C("error",{uri:e,node:a}),f()}):a.onreadystatechange=function(){/loaded|complete/.test(a.readyState)&&f()},b):(setTimeout(function(){q(a,c)},1),b)}function q(a,b){var c=a.sheet,d;if(V)c&&(d=!0);else if(c)try{c.cssRules&&(d=!0)}catch(e){"NS_ERROR_DOM_SECURITY_ERR"===e.name&&(d=!0)}setTimeout(function(){d?b():q(a,b)},20)}function r(){if(T)return T;if(U&&"interactive"===U.readyState)return U;for(var a=Q.getElementsByTagName("script"),b=a.length-1;b>=0;b--){var c=a[b];if("interactive"===c.readyState)return U=c}}function s(a){var b=[];return a.replace(X,"").replace(W,function(a,c,d){d&&b.push(d)}),b}function t(a,b){this.uri=a,this.dependencies=b||[],this.exports=null,this.status=0,this._waitings={},this._remain=0}if(!a.seajs){var u=a.seajs={version:"2.2.1"},v=u.data={},w=c("Object"),x=c("String"),y=Array.isArray||c("Array"),z=c("Function"),A=0,B=v.events={};u.on=function(a,b){var c=B[a]||(B[a]=[]);return c.push(b),u},u.off=function(a,b){if(!a&&!b)return B=v.events={},u;var c=B[a];if(c)if(b)for(var d=c.length-1;d>=0;d--)c[d]===b&&c.splice(d,1);else delete B[a];return u};var C=u.emit=function(a,b){var c=B[a],d;if(c)for(c=c.slice();d=c.shift();)d(b);return u},D=/[^?#]*\//,E=/\/\.\//g,F=/\/[^/]+\/\.\.\//,G=/([^:/])\/\//g,H=/^([^/:]+)(\/.+)$/,I=/{([^{]+)}/g,J=/^\/\/.|:\//,K=/^.*?\/\/.*?\//,L=document,M=e(L.URL),N=L.scripts,O=L.getElementById("seajsnode")||N[N.length-1],P=e(n(O)||M);u.resolve=m;var Q=L.head||L.getElementsByTagName("head")[0]||L.documentElement,R=Q.getElementsByTagName("base")[0],S=/\.css(?:\?|$)/i,T,U,V=+navigator.userAgent.replace(/.*(?:AppleWebKit|AndroidWebKit)\/(\d+).*/,"$1")<536;u.request=o;var W=/"(?:\\"|[^"])*"|'(?:\\'|[^'])*'|\/\*[\S\s]*?\*\/|\/(?:\\\/|[^\/\r\n])+\/(?=[^\/])|\/\/.*|\.\s*require|(?:^|[^$])\brequire\s*\(\s*(["'])(.+?)\1\s*\)/g,X=/\\\\/g,Y=u.cache={},Z,$={},_={},ab={},bb=t.STATUS={FETCHING:1,SAVED:2,LOADING:3,LOADED:4,EXECUTING:5,EXECUTED:6};t.prototype.resolve=function(){for(var a=this,b=a.dependencies,c=[],d=0,e=b.length;e>d;d++)c[d]=t.resolve(b[d],a.uri);return c},t.prototype.load=function(){var a=this;if(!(a.status>=bb.LOADING)){a.status=bb.LOADING;var c=a.resolve();C("load",c);for(var d=a._remain=c.length,e,f=0;d>f;f++)e=t.get(c[f]),e.status<bb.LOADED?e._waitings[a.uri]=(e._waitings[a.uri]||0)+1:a._remain--;if(0===a._remain)return a.onload(),b;var g={};for(f=0;d>f;f++)e=Y[c[f]],e.status<bb.FETCHING?e.fetch(g):e.status===bb.SAVED&&e.load();for(var h in g)g.hasOwnProperty(h)&&g[h]()}},t.prototype.onload=function(){var a=this;a.status=bb.LOADED,a.callback&&a.callback();var b=a._waitings,c,d;for(c in b)b.hasOwnProperty(c)&&(d=Y[c],d._remain-=b[c],0===d._remain&&d.onload());delete a._waitings,delete a._remain},t.prototype.fetch=function(a){function c(){u.request(g.requestUri,g.onRequest,g.charset)}function d(){delete $[h],_[h]=!0,Z&&(t.save(f,Z),Z=null);var a,b=ab[h];for(delete ab[h];a=b.shift();)a.load()}var e=this,f=e.uri;e.status=bb.FETCHING;var g={uri:f};C("fetch",g);var h=g.requestUri||f;return!h||_[h]?(e.load(),b):$[h]?(ab[h].push(e),b):($[h]=!0,ab[h]=[e],C("request",g={uri:f,requestUri:h,onRequest:d,charset:v.charset}),g.requested||(a?a[g.requestUri]=c:c()),b)},t.prototype.exec=function(){function a(b){return t.get(a.resolve(b)).exec()}var c=this;if(c.status>=bb.EXECUTING)return c.exports;c.status=bb.EXECUTING;var e=c.uri;a.resolve=function(a){return t.resolve(a,e)},a.async=function(b,c){return t.use(b,c,e+"_async_"+d()),a};var f=c.factory,g=z(f)?f(a,c.exports={},c):f;return g===b&&(g=c.exports),delete c.factory,c.exports=g,c.status=bb.EXECUTED,C("exec",c),g},t.resolve=function(a,b){var c={id:a,refUri:b};return C("resolve",c),c.uri||u.resolve(c.id,b)},t.define=function(a,c,d){var e=arguments.length;1===e?(d=a,a=b):2===e&&(d=c,y(a)?(c=a,a=b):c=b),!y(c)&&z(d)&&(c=s(""+d));var f={id:a,uri:t.resolve(a),deps:c,factory:d};if(!f.uri&&L.attachEvent){var g=r();g&&(f.uri=g.src)}C("define",f),f.uri?t.save(f.uri,f):Z=f},t.save=function(a,b){var c=t.get(a);c.status<bb.SAVED&&(c.id=b.id||a,c.dependencies=b.deps||[],c.factory=b.factory,c.status=bb.SAVED)},t.get=function(a,b){return Y[a]||(Y[a]=new t(a,b))},t.use=function(b,c,d){var e=t.get(d,y(b)?b:[b]);e.callback=function(){for(var b=[],d=e.resolve(),f=0,g=d.length;g>f;f++)b[f]=Y[d[f]].exec();c&&c.apply(a,b),delete e.callback},e.load()},t.preload=function(a){var b=v.preload,c=b.length;c?t.use(b,function(){b.splice(0,c),t.preload(a)},v.cwd+"_preload_"+d()):a()},u.use=function(a,b){return t.preload(function(){t.use(a,b,v.cwd+"_use_"+d())}),u},t.define.cmd={},a.define=t.define,u.Module=t,v.fetchedList=_,v.cid=d,u.require=function(a){var b=t.get(t.resolve(a));return b.status<bb.EXECUTING&&(b.onload(),b.exec()),b.exports};var cb=/^(.+?\/)(\?\?)?(seajs\/)+/;v.base=(P.match(cb)||["",P])[1],v.dir=P,v.cwd=M,v.charset="utf-8",v.preload=function(){var a=[],b=location.search.replace(/(seajs-\w+)(&|$)/g,"$1=1$2");return b+=" "+L.cookie,b.replace(/(seajs-\w+)=1/g,function(b,c){a.push(c)}),a}(),u.config=function(a){for(var b in a){var c=a[b],d=v[b];if(d&&w(d))for(var e in c)d[e]=c[e];else y(d)?c=d.concat(c):"base"===b&&("/"!==c.slice(-1)&&(c+="/"),c=l(c)),v[b]=c}return C("config",a),u}}}(this);
define("core", [ "zepto.extend.fx", "zepto.extend.data", "zepto.extend.selector" ], function(require, exports, module) {
......@@ -9,16 +9,6 @@ define("core", [ "zepto.extend.fx", "zepto.extend.data", "zepto.extend.selector"
// Zepto selector extend
require("zepto.extend.selector");
var $ = window.Zepto, UI = $.AMUI || {}, $win = $(window), doc = window.document, $html = $("html");
// usage: log('inside coolFunc',this,arguments);
// http://paulirish.com/2009/log-a-lightweight-wrapper-for-consolelog/
window.log = function() {
log.history = log.history || [];
// store logs to an array for reference
log.history.push(arguments);
if (this.console) {
console.log.apply(console, Array.prototype.slice.call(arguments));
}
};
if (UI.fn) {
return UI;
}
......@@ -1692,6 +1682,7 @@ define("ui.button", [ "core", "zepto.extend.fx", "zepto.extend.data", "zepto.ext
"use strict";
require("core");
var $ = window.Zepto, UI = $.AMUI;
// via https://github.com/twbs/bootstrap/blob/master/js/button.js
// Button Class
var Button = function(element, options) {
this.$element = $(element);
......@@ -5426,10 +5417,9 @@ define("util.qrcode", [], function(require, exports, module) {
define("zepto.extend.data", [], function(require, exports, module) {
var $ = window.Zepto;
// Zepto.js
// (c) 2010-2013 Thomas Fuchs
// (c) 2010-2014 Thomas Fuchs
// Zepto.js may be freely distributed under the MIT license.
// The following code is heavily inspired by jQuery's $.fn.data()
// used by: nav.js | offcanvas.js | zepto.flexslider.js
var data = {}, dataAttr = $.fn.data, camelize = $.camelCase, exp = $.expando = "Zepto" + +new Date(), emptyArray = [];
// Get value from node:
// 1. first try key as given,
......@@ -5467,7 +5457,7 @@ define("zepto.extend.data", [], function(require, exports, module) {
setData(node, key, value);
});
}) : // get value from first element
this.length == 0 ? undefined : getData(this[0], name) : // set value on all elements
0 in this ? getData(this[0], name) : undefined : // set value on all elements
this.each(function() {
setData(this, name, value);
});
......@@ -7556,10 +7546,13 @@ define("zepto.touchgallery", [ "./zepto.extend.touch", "zepto.pinchzoom" ], func
}
// Listen for arrow keys
$(window).on("keydown", function(e) {
if (e.keyCode == 37) {
var keyCode = e.keyCode;
if (keyCode == 37) {
showPrevious();
} else if (e.keyCode == 39) {
} else if (keyCode == 39) {
showNext();
} else if (keyCode == 27) {
hideOverlay();
}
});
/* Private functions */
......
此差异已折叠。
......@@ -9,8 +9,8 @@
<meta name="format-detection" content="telephone=no">
<meta name="renderer" content="webkit">
<meta http-equiv="Cache-Control" content="no-siteapp" />
<link rel="alternate icon" type="image/png" href="/i/favicon.png">
<link rel="stylesheet" href="/css/amui.all.min.css"/>
<link rel="alternate icon" type="image/png" href="http://amazeui.org/i/favicon.png">
<link rel="stylesheet" href="http://amazeui.org/css/amui.all.min.css"/>
<style>
@media only screen and (min-width: 1200px) {
.blog-g-fixed {
......@@ -189,7 +189,7 @@
<p>blog template<br/><small>© Copyright XXX. by the AmazeUI Team.</small></p>
</footer>
<script src="/lib/zepto/zepto.js"></script>
<script src="/js/amui.js"></script>
<script src="http://amazeui.org/lib/zepto/zepto.js"></script>
<script src="http://amazeui.org/js/amui.min.js"></script>
</body>
</html>
\ No newline at end of file
......@@ -9,8 +9,8 @@
<meta name="format-detection" content="telephone=no">
<meta name="renderer" content="webkit">
<meta http-equiv="Cache-Control" content="no-siteapp" />
<link rel="alternate icon" type="image/png" href="/i/favicon.png">
<link rel="stylesheet" href="/css/amui.all.min.css"/>
<link rel="alternate icon" type="image/png" href="http://amazeui.org/i/favicon.png">
<link rel="stylesheet" href="http://amazeui.org/css/amui.all.min.css"/>
<style>
.head-fixed {
padding-top: 50px;
......@@ -209,7 +209,7 @@
<div class="hope">
<div class="am-g am-container">
<div class="col-lg-4 col-md-6 col-sm-12 hope-img">
<img src="/i/examples/landing.png" alt="" data-am-scrollspy="{animation:'slide-left', repeat: false}">
<img src="http://amazeui.org/i/examples/landing.png" alt="" data-am-scrollspy="{animation:'slide-left', repeat: false}">
<hr class="am-article-divider am-show-sm-only hope-hr">
</div>
<div class="col-lg-8 col-md-6 col-sm-12">
......@@ -256,7 +256,7 @@
<footer class="footer">
<p>© 2014 <a href="http://www.yunshipei.com" target="_blank">AllMobilize, Inc.</a> Licensed under <a href="http://opensource.org/licenses/MIT" target="_blank">MIT license</a>. by the AmazeUI Team.</p>
</footer>
<script src="/lib/zepto/zepto.js"></script>
<script src="/js/amui.js"></script>
<script src="http://amazeui.org/lib/zepto/zepto.min.js"></script>
<script src="http://amazeui.org/js/amui.min.js"></script>
</body>
</html>
\ No newline at end of file
......@@ -8,8 +8,8 @@
<meta name="format-detection" content="telephone=no">
<meta name="renderer" content="webkit">
<meta http-equiv="Cache-Control" content="no-siteapp" />
<link rel="alternate icon" type="image/png" href="/i/favicon.png">
<link rel="stylesheet" href="/css/amui.all.min.css"/>
<link rel="alternate icon" type="image/png" href="http://amazeui.org/i/favicon.png">
<link rel="stylesheet" href="http://amazeui.org/css/amui.all.min.css"/>
<style>
.header {
text-align: center;
......
......@@ -8,8 +8,8 @@
<meta name="format-detection" content="telephone=no">
<meta name="renderer" content="webkit">
<meta http-equiv="Cache-Control" content="no-siteapp" />
<link rel="alternate icon" type="image/png" href="/i/favicon.png">
<link rel="stylesheet" href="/css/amui.all.min.css"/>
<link rel="alternate icon" type="image/png" href="http://amazeui.org/i/favicon.png">
<link rel="stylesheet" href="http://amazeui.org/css/amui.all.min.css"/>
<style>
@media only screen and (min-width: 641px) {
.am-offcanvas {
......@@ -183,7 +183,7 @@
<footer class="my-footer">
<p>sidebar template<br><small>© Copyright XXX. by the AmazeUI Team.</small></p>
</footer>
<script src="/lib/zepto/zepto.js"></script>
<script src="/js/amui.js"></script>
<script src="http://amazeui.org/lib/zepto/zepto.min.js"></script>
<script src="http://amazeui.org/js/amui.min.js"></script>
</body>
</html>
\ No newline at end of file
......@@ -14,160 +14,73 @@ __注意:__ 目前提供下载的为测试版本,部分细节还在调整、
<div class="am-g">
<div class="col-md-6 col-md-centered">
<a href="/download" class="am-btn am-btn-block am-btn-success am-btn-lg" onclick="window.ga && ga('send', 'pageview', '/download/AmazeUI.zip');
">下载 Amaze UI Boilerplate</a>
">下载 Amaze UI v1.0.0 beta</a>
</div>
</div>
## jQuery or Zepto?
> 我承认,我是猴子派来捣乱的!
移动端首选 Zepto,桌面端选 jQuery,这应该是大多数开发者的共识。那对于跨平台的响应式网站呢?
- Zepto 体积小,下载快,但 __除了小,还有别的吗?__ Wifi 普及,4G 降临,那几十 KB 的还那么重要吗?优化一张图片好几个 jQuery 就出来了。
- jQuery 体积稍大,这是缺点。但是背后 jQuery 很多细节处理得很到位;成熟的生态圈,很多 jQuery 插件;庞大的社区,使用 jQuery 遇到问题时,可以很快从社区获得解决方案。jQuery 的这些特点有助于有效的提高开发效率。这些都是 Zepto 所缺乏的。
- 性能考量:体积小不等于执行效率高;而且通过数十万次计算得出一个百分之几的差距,实际是放大了性能差异,实际使用中很少有那么大的计算量。
## 版本说明
虽然我们现在使用 Zepto,是从专门针对移动开发时代沿袭过来的。现在增加桌面端支持,Zepto 可能[不是一个好的选择](http://zurb.com/article/1293/why-we-dropped-zepto)
Amaze UI 遵循 [Semantic Versioning](http://semver.org/lang/zh-CN/) 规范,版本格式采用 `主版本号.次版本号.修订号` 的形式,版本号递增规则如下:
我个人倾向 jQuery,你呢? __欢迎大家投票,并在[评论](#ds-thread)中分享你的想法__。
- 主版本号:做了不兼容的API 修改,如整体风格变化、大规模重构等;
- 次版本号:做了向下兼容的功能性新增;
- 修订号:做了向下兼容的问题修正、细节调整等。
<iframe seamless="seamless" style="border: none; overflow: hidden;" height="450" width="100%" scrolling="no" src="http://assets-polarb-com.a.ssl.fastly.net/api/v4/publishers/hegfirose/embedded_polls/iframe?poll_id=192386"></iframe>
## 目录结构
-`index.html` 为样板编写 HTML;
- `index.html` - 空白 HTML 模板;
- `blog.html` - 博客页面模板([预览](/examples/blog.html));
- `landing.html` - Landing Page 模板([预览](/examples/landing.html));
- `login.html` - 登录界面模板([预览](/examples/login.html));
- `sidebar.html` - 带边栏的文章模板([预览](/examples/sidebar.html));
-`app.css` 中编写 CSS;
-`app.js` 中编写 JavaScript;
- 图片资源可以放在 `i` 目录下。
__注意:__ [组件](/widgets) 部分的 CSS 及 JS 已经默认打包,目前只能自行拷贝 HTML 组建页面,稍后会提供基于 [Handlebars](http://handlebarsjs.com/) partial 的更方便的使用方式。
```
.Amaze UI Boilerplate
|
AmazeUI
├── assets
│   ├── css
│   │   ├── amui.all.css
│   │   ├── amui.all.min.css
│   │   └── app.css
│   ├── i
│   │   ├── app-icon72x72@2x.png
│   │   └── favicon.png
│   └── js
│   ├── amui.js
│   ├── amui.min.js
│   ├── amui.widget.helper.js
│   ├── amui.widget.helper.min.js
│   ├── app.js
│   └── zepto.min.js
└── index.html
├── blog.html
├── index.html
├── landing.html
├── login.html
├── sidebar.html
└── widget.html
```
## 桌面图标
在开发网站的过程中我们常常会设置一个 Touch Icon。由于系统的差异性,添加到桌面图标并没有统一的标准。iOS 最早支持 Touch Icon,并有明确的规范,其他系统一定程度上支持 iOS 的规范。
### 终极方案
下面是兼容 iOS 4.2+ 及 Android 2.1+ 的通用写法:
```html
<link rel="apple-touch-icon-precomposed" href="/path/to/icon72x72@2x.png">
```
- `rel="apple-touch-icon-precomposed"`:不给 Icon 添加额外的效果;兼容 Android 1.5 - 2.1。
- Icon 尺寸:144px * 144px,兼容 iPhone、iPad 及绝大部分安卓设备。
如果想了解更多细节,可以继续阅读后面的内容。
### iOS
```html
<!-- Add to homescreen for Safari on iOS -->
<!-- 添加至主屏, 从主屏进入会隐藏地址栏和状态栏, 全屏(content="yes") -->
<meta name="apple-mobile-web-app-capable" content="yes">
<!-- 系统顶栏的颜色(content = black、white 和 black-translucent)选其一就可以 -->
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-status-bar-style" content="white">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<!-- 指定标题 -->
<meta name="apple-mobile-web-app-title" content="Web Starter Kit">
<!-- 指定icon, 建议PNG格式-->
<link rel="apple-touch-icon" href="touch-icon-iphone.png">
<link rel="apple-touch-icon" sizes="76x76" href="touch-icon-ipad.png">
<link rel="apple-touch-icon" sizes="120x120" href="touch-icon-iphone-retina.png">
<link rel="apple-touch-icon" sizes="152x152" href="touch-icon-ipad-retina.png">
<!--
使用rel="apple-touch-icon"属性为“增加高光光亮的图标”, 系统会自动为图标添加圆角及高光;
使用rel="apple-touch-icon-precomposed"属性为“设计原图图标”;
-->
```
尺寸说明:
<table class="am-table am-table-bd am-table-striped" style="text-align: center;">
<thead style="text-align: center;">
<tr>
<th style="width:100px; text-align: center">机型</th>
<th>iPhone 5 and iPod touch (高分辨率)</th>
<th>iPhone and iPod touch (高分辨率)</th>
<th>iPad and iPad mini (高分辨率)</th>
<th>iPad 2 and iPad mini (标准分辨率)</th>
</tr>
</thead>
<tbody>
<tr>
<td>尺寸 (px)</td>
<td>120 x 120</td>
<td>120 x 120</td>
<td>152 x 152</td>
<td>76 x 76</td>
</tr>
</tbody>
</table>
__参考链接:__
- [iOS Human Interface Guidelines - Icon and Image Sizes
](https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconMatrix.html)
- [Everything you always wanted to know about touch icons](http://mathiasbynens.be/notes/touch-icons)
- [Configuring Web Applications](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html)
### Android Chrome
Android 下目前只有 Chrome 31 支持 Add to Homescreen。
```html
<!-- Add to homescreen for Chrome on Android -->
<meta name="mobile-web-app-capable" content="yes">
<link rel="icon" sizes="196x196" href="images/touch/chrome-touch-icon-196x196.png">
```
__参考链接:__
## 参与讨论
- [Chrome Add to Homescreen](https://developer.chrome.com/multidevice/android/installtohomescreen)
有任何使用问题,请大家直接在评论中留言,也欢迎大家发表意见、建议。
### Win 8
__感谢大家对 Amaze UI 的关注和支持!__
```html
<!-- Tile icon for Win8 (144x144 + tile color) -->
<!-- win 8 磁贴图标 -->
<meta name="msapplication-TileImage" content="images/touch/ms-touch-icon-144x144-precomposed.png">
<!-- win 8 磁贴颜色 -->
<meta name="msapplication-TileColor" content="#3372DF">
```
## jQuery or Zepto?
__参考链接:__
> 我承认,我是猴子派来捣乱的!
- [Pinned Sites][pinedsites]
- [MSDN - Pinned site metadata reference][msdn-pin]
移动端首选 Zepto,桌面端选 jQuery,这应该是大多数开发者的共识。那对于跨平台的响应式网站呢?
[pinedsites]:http://msdn.microsoft.com/en-us/library/ie/hh772707(v=vs.85).aspx
[msdn-pin]:http://msdn.microsoft.com/zh-cn/library/ie/dn255024(v=vs.85).aspx
- Zepto 体积小,下载快,但 __除了小,还有别的吗?__ Wifi 普及,4G 降临,那几十 KB 的还那么重要吗?优化一张图片好几个 jQuery 就出来了。
- jQuery 体积稍大,这是缺点。但是背后 jQuery 很多细节处理得很到位;成熟的生态圈,很多 jQuery 插件;庞大的社区,使用 jQuery 遇到问题时,可以很快从社区获得解决方案。jQuery 的这些特点有助于有效的提高开发效率。这些都是 Zepto 所缺乏的。
- 性能考量:体积小不等于执行效率高;而且通过数十万次计算得出一个百分之几的差距,实际是放大了性能差异,实际使用中很少有那么大的计算量。
## 参与讨论
虽然我们现在使用 Zepto,是从专门针对移动开发时代沿袭过来的。现在增加桌面端支持,Zepto 可能[不是一个好的选择](http://zurb.com/article/1293/why-we-dropped-zepto)
有任何使用问题,请大家直接在评论中留言,也欢迎大家发表意见、建议
我个人倾向 jQuery,你呢? __欢迎大家投票,并在[评论](#ds-thread)中分享你的想法__
__感谢大家对 Amaze UI 的关注和支持!__
<iframe seamless="seamless" style="border: none; overflow: hidden;" height="450" width="100%" scrolling="no" src="http://assets-polarb-com.a.ssl.fastly.net/api/v4/publishers/hegfirose/embedded_polls/iframe?poll_id=192386"></iframe>
# 基于 Amaze UI 二次开发
# 基于 Amaze UI 进阶开发
---
使用中有何问题,请直接在[评论](#ds-thread)中留言,我们会不断补充完善文档。
......
# Web App 相关
---
## 桌面图标
在开发网站的过程中我们常常会设置一个 Touch Icon。由于系统的差异性,添加到桌面图标并没有统一的标准。iOS 最早支持 Touch Icon,并有明确的规范,其他系统一定程度上支持 iOS 的规范。
### 终极方案
下面是兼容 iOS 4.2+ 及 Android 2.1+ 的通用写法:
```html
<link rel="apple-touch-icon-precomposed" href="/path/to/icon72x72@2x.png">
```
- `rel="apple-touch-icon-precomposed"`:不给 Icon 添加额外的效果;兼容 Android 1.5 - 2.1。
- Icon 尺寸:144px * 144px,兼容 iPhone、iPad 及绝大部分安卓设备。
如果想了解更多细节,可以继续阅读后面的内容。
### iOS
```html
<!-- Add to homescreen for Safari on iOS -->
<!-- 添加至主屏, 从主屏进入会隐藏地址栏和状态栏, 全屏(content="yes") -->
<meta name="apple-mobile-web-app-capable" content="yes">
<!-- 系统顶栏的颜色(content = black、white 和 black-translucent)选其一就可以 -->
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-status-bar-style" content="white">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<!-- 指定标题 -->
<meta name="apple-mobile-web-app-title" content="Web Starter Kit">
<!-- 指定icon, 建议PNG格式-->
<link rel="apple-touch-icon" href="touch-icon-iphone.png">
<link rel="apple-touch-icon" sizes="76x76" href="touch-icon-ipad.png">
<link rel="apple-touch-icon" sizes="120x120" href="touch-icon-iphone-retina.png">
<link rel="apple-touch-icon" sizes="152x152" href="touch-icon-ipad-retina.png">
<!--
使用rel="apple-touch-icon"属性为“增加高光光亮的图标”, 系统会自动为图标添加圆角及高光;
使用rel="apple-touch-icon-precomposed"属性为“设计原图图标”;
-->
```
尺寸说明:
<table class="am-table am-table-bd am-table-striped" style="text-align: center;">
<thead style="text-align: center;">
<tr>
<th style="width:100px; text-align: center">机型</th>
<th>iPhone 5 and iPod touch (高分辨率)</th>
<th>iPhone and iPod touch (高分辨率)</th>
<th>iPad and iPad mini (高分辨率)</th>
<th>iPad 2 and iPad mini (标准分辨率)</th>
</tr>
</thead>
<tbody>
<tr>
<td>尺寸 (px)</td>
<td>120 x 120</td>
<td>120 x 120</td>
<td>152 x 152</td>
<td>76 x 76</td>
</tr>
</tbody>
</table>
__参考链接:__
- [iOS Human Interface Guidelines - Icon and Image Sizes
](https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconMatrix.html)
- [Everything you always wanted to know about touch icons](http://mathiasbynens.be/notes/touch-icons)
- [Configuring Web Applications](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html)
### Android Chrome
Android 下目前只有 Chrome 31 支持 Add to Homescreen。
```html
<!-- Add to homescreen for Chrome on Android -->
<meta name="mobile-web-app-capable" content="yes">
<link rel="icon" sizes="196x196" href="images/touch/chrome-touch-icon-196x196.png">
```
__参考链接:__
- [Chrome Add to Homescreen](https://developer.chrome.com/multidevice/android/installtohomescreen)
### Win 8
```html
<!-- Tile icon for Win8 (144x144 + tile color) -->
<!-- win 8 磁贴图标 -->
<meta name="msapplication-TileImage" content="images/touch/ms-touch-icon-144x144-precomposed.png">
<!-- win 8 磁贴颜色 -->
<meta name="msapplication-TileColor" content="#3372DF">
```
__参考链接:__
- [Pinned Sites][pinedsites]
- [MSDN - Pinned site metadata reference][msdn-pin]
[pinedsites]:http://msdn.microsoft.com/en-us/library/ie/hh772707(v=vs.85).aspx
[msdn-pin]:http://msdn.microsoft.com/zh-cn/library/ie/dn255024(v=vs.85).aspx
\ No newline at end of file
# Web 组件
---
Amaze UI Web 组件把一些常见的网页组件拆分成不同的部分,进行类似 Web Components 的封装。
Amaze UI Web 组件把一些常见的网页组件拆分成不同的部分,进行类似 Web Components 的封装[Web 组件简介](/getting-started/widget-dev)[开发规范](/getting-started/widget)
## Web 组件演示
......
......@@ -157,7 +157,12 @@ gulp.task('watch', function() {
gulp.task('zip', function () {
return gulp.src(['./docs/boilerplate/**', './dist/**', '!dist/demo/**/*', '!dist/test/**/*', '!dist/docs/**/*', '!dist/*.zip'])
return gulp.src(['./docs/boilerplate/**', './dist/**', '!dist/demo/**/*', '!dist/test/**/*', '!dist/docs/**/*', '!dist/*.zip',
'docs/examples/blog.html',
'docs/examples/landing.html',
'docs/examples/login.html',
'docs/examples/sidebar.html'
])
.pipe(zip('AmazeUI.zip', {comment: 'Created on ' + gutil.date(now, 'yyyy-mm-dd HH:mm:ss')}))
.pipe(gulp.dest('dist'));
});
......
......@@ -5,7 +5,7 @@
"localName": {
"en": "Map",
"zh-cn": "地图"
"zh-cn": "百度地图"
},
"icon": "map.png",
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册