按月归档:2015年八月月

关于angularJs中的unsafe:

最近在做一个Cordova的项目,之前有没有说过…… 无所谓了,我在里面的发短信和打电话都简单的使用了tel:和sms:的链接值,有没有人不知道?就是这样的:

手机上的浏览器看到这样的链接,就会自动调出短信和拨号的界面啦,其实很早之前的mailto:,也是类似这样的东西。

不过在cordova中,光这样写是不行的,你还要在config.xml中增加如下的声明才行:

据说来自IBM对Cordova的贡献,有够会来事儿啊:)

但是即便如此,我发现还是不行,为啥呢,经过旷日持久的debug后,发现生产的代码发现居然是<a href="unsafe:sms:12312312123">xxx</a>,为啥,unsafe是什么鬼?
30_3999_3f233fc945f475a
angularJS新手表示压力很大,请教google大神后,有善良的叔叔拯救了我,原来angular对href是有安全检查的,只能生成它认为安全的链接。AngularJS真是为我们的安全操碎了心……而我也更加明白了{{}}并不是一个简单的模板替换,它真的把我们的html重新编译了一遍!

解决方法如下~

终于搞定了ARC Welder

很久很久之前,我就安装了ARC Welder,不知道这是什么么?我来摘抄一段

ARC Welder – 神奇的谷歌浏览器插件!通过 Chrome 直接在电脑上运行安卓软件
ARC 原本是谷歌 Chrome OS 系统里的一个官方 Android 模拟器,不过为了进一步扩大安卓平台的影响力以及实现跨桌面系统运行,谷歌决定将 ARC 变成一个通用的 Chrome 浏览器扩展 (命名为 ARC Welder),这意味着现在无论是 Win、Mac、Linux 系统都能通过谷歌浏览器来直接运行 Android APP软件和游戏了!
ARC 安卓模拟器(或者称为APP运行环境)是以 “浏览器插件扩展” 的方式开放给用户使用的,它完全免费,用户只要在 Windows、Mac OS X、Linux 等系统上安装 Chrome 谷歌浏览器并安装上「ARC Welder」扩展后,我们的电脑就可以通过 Chrome 来运行或测试各种 Android 应用软件/游戏了。

但是一直没有成功过,点击add your apk后,就一直显示“testing your apk”,然后下面的载入图标转啊转,转啊转的从没看见动过,几次下来也就放弃了……

如今有了一点空,觉得好好整整,虽然离“技术宅”(注:褒义词)水平上还有点差距,但好歹是“搞技术”的,不能放任一个好玩的东西无法使用吧~

  1. 重新安装ARC Welder,要番·羽·土·啬才能登上Google应用商店的,这个就不说了吧。地址是https://chrome.google.com/webstore/detail/arc-welder/emfinbmielocnlhgmfkkmkngdoccbadn。
  2. 装上去以后,可以打开ARC Welder了,可以点击Add your Apk了,然后……然后就没有然后了……
  3. 之前我就卡在这里没了主意,这次我仔细看了看说明,发现他需要ARC Runtime,看样子我没有,于是又忙不迭地去搜索。
  4. 感谢“全球最大同性交友平台”github,我发现了这个 http://archon-runtime.github.io/ 。
  5. 按照说明,下载下来解压,用chrome扩展程序中的的开发者模式载入runtime,虽然有两个警告,但是OK的。
    archon-custom-runtime
  6. 再来,发现还是那样……无限“testing your APK”……
  7. 接下是重头戏!duang,经过不懈的搜索和思考,我意识到,这个东西既然依赖Chrome浏览器,那必然使用了Chrome很高级的运行解释功能,虽然V8能力很强,但是要运行一个完成APK应用,恐怕还不是很够,那Chrome中最强大的运行环境到底是啥呢?没错,就是Native Client,为什么想起这个东西呢,因为我记得Unity3D生成的HTML版本,就是依赖chrome的这个东西的,果然玩的杂一些思维也开阔啊:-)
  8. chrome://plugins/敲入地址栏,把从不知哪个版本后默认禁止的Native Client开启吧,再试试?
  9. APK随便玩,天下我有~~

height为auto的transition动画

css3给我们带来了很多美好的东西,比如动画,再也不用使用jQuery来做低效的动画模拟了。不过想来大家也知道css3 transition动画的一些限制,比如说一个高度为auto的div,你是不能够使用transition: height来生成平滑的伸展效果的,按照css3的说法,大概是只有固定值之间,才能使用插帧什么的手段实现,总觉得这个说法有点儿牵强,浏览器难道不知道正常情况下的高度吗?

无奈,我遇到了这个问题,又不想动用js,只好剑走偏锋,想想主意了。

  1. 用js获得高度,暂不考虑;
  2. 用transform实现;
  3. 用max-height实现;

用transform实现是个很精巧的主意,我们知道transform中有scale的属性,可以变换一个元素的尺寸,所以将scale(或者直接scaleY,如果你只想改高度的话)变换应用到transition中,就能实现视觉上的高度变化啦~ 主意我使用了“视觉上”这三个字,因为你直接一试就明白了,transform和relative的布局是一样的,不管你怎么变,你原来占据的空间是一直在那儿的。所以很多时候这个用法并不怎么适用,另外还要记住transform变换的原点,免得中心缩放了。
transition-in-height-auto-1

无奈,使用max-height吧。你会惊喜的发现max-height同样可以在transition中使用,配合overflow:hidden,给一个足够大的max-height,就能比较完美的模拟出height变化的效果了。当然,既然是“模拟”,总有些与正版的差距。稍微考虑下就能想到,如果我们真实的高度比max-height小,那max-height动画展示的时候,直到max-height与真实高度一致为止,你是看不到动画效果的。所以…… 你懂的,收起来的时候感觉动画卡顿了一下,展开的时候倒还好~

我用max-height做了纯css的收缩效果,暂时工作的还好~

立秋,多事之秋

8月8,顺口的日子,酷暑的日子,立秋的日子。

最近一直关于换工作犹豫着,不对现在的单位和可能要去的单位多发表言论了,凡事凡物总有好与不好,再比较也是无济于事。只是想想这份工作又是三年多,和上一份工作同样,也许是个离开的好时节?

马云说的真对,正确到骨子里去了,员工离开,要么受委屈了,要么钱没给够。

今天预报只有32度,看炎热度不比前两天的35、36差,还飘了一点点雨,不仅没降温,反倒更加闷热了。


发现好多都放在草稿箱里没发出去呀,10月3日编辑发出,已经在新单位工作了,与预想的颇有不同,不过,先干着咯~