最近公司公众号二次开发,前段用到了msui(比较小众的ui),总结一下里面的坑。
1,$ 这个采用的是zepto轻量级的库,而不是jquery,大家遇到$报错,或者调取不了一些jquery方法时候要注意。
2、a标签跳转 正常情况下 a标签是可以正常跳转新页面的,但是在msui不是的。
SUI框架的Router默认开启,会自动拦截所有链接的Touch行为,如果希望一个链接走浏览器原生跳转而不使用router,可以在链接上增加 class="external". (或者自定义属性)
或者:请看官方的解释:
http://m.sui.taobao.org/faq/#router-js
解决方案1:
如果需要禁用路由功能,那么可以在 zepto 之后, msui 之前使用 script $.config = {router: false} 来禁用.
<script type='text/javascript' src='//g.alicdn.com/sj/lib/zepto/zepto.min.js' charset='utf-8'></script>
<script type="text/javascript">
$.config = {router: false}
</script>
<script type='text/javascript' src='//g.alicdn.com/msui/sm/0.6.2/js/sm.min.js' charset='utf-8'></script>
<script type='text/javascript' src='//g.alicdn.com/msui/sm/0.6.2/js/sm-extend.min.js' charset='utf-8'></script>
解决方案2:
利用js:在a标签中插入js执行:
<a class="button button-link button-nav pull-left" href="javascript:history.go(-1);" class="external" data-transition='slide-out'>
<span class="icon icon-left" style="color: #ff9696;"></span>
</a>
希望对大家有所帮助!!