3月
08
花瓣的内容排版是使用瀑布流的方式排版。实现瀑布流式的排版的插件蛮多的,blocksit 就是一个比较简便的插件。
依赖少,仅仅依靠 jquery。 css也少。用该插件,注意以下几个问题就可以了
- 每次执行 BlocksIt 之前,设置父容器的宽度的时候要正确。
-
图片加载完成后,再 BlocksIt 一次。防止,图片排版错乱。
其实,排版的是图片的父容器。使用的是绝对定位。而为什么总是说图片,就是因为所要展示的中心是图片。围绕图片,可以在图片上放置div,图片下边,等放置div。其结构可以有下边这样的层次构成。
3月
08
在做 banner 切换的时候,swiper插件刚好能用上,效果也非常好。
可以先看下他们的demo:
http://www.swiper.com.cn/demo/index.html
滚动条效果,都做的非常有弹性。有需要的可以去尝试。
3D滚动切换也非常棒。有需要的可以去尝试。
3月
01
什么是 RESTful
RESTful 是一种软件设计风格,由 Roy Fielding 在他的 论文 中提出,全称为 Representational State Transfer
,直译为表现层状态转移
,或许可以解释为用 URL 定位资源,用 HTTP 动词描述操作
,不用太纠结于定义,接下来我们会详细讨论。
RESTful 风格的接口,目前来看,实现的最好的就是 Github API,经常被效仿。接下来我们通过分析 Github API 来引出我们的 API 设计原则。
1月
28
textarea 原本是不会自适应高度的。可恨的滚动条也总会出现。想要让textarea自适应高度的,就用 js
吧。
自适应高度
$('textarea').each(function () {
this.setAttribute('style', 'height:' + (this.scrollHeight) + 'px;overflow-y:hidden;');
}).on('input', function () {
this.style.height = 'auto';
this.style.height = (this.scrollHeight) + 'px';
});
textarea 内容改变侦听
$('textarea').bind('input propertychange', function() {
$('.msg').html($(this).val().length + ' characters');
});
额外赠送 smplemde
https://github.com/sparksuite/simplemde-markdown-editor
可隐藏bar,可设置最小高度,可侦听变化,可复制粘贴图片。
额外赠送 js
markdown->html
https://github.com/chjj/marked
调用 marked 方法即可。
1月
05
批处理是一种高效的操作模式。既然是批量,就得有迹可循,有规则可定义。比如给最后5个文件打包压缩,又比如只将.jpg
文件打包压缩。下边,就来总结下常见的操作。
先看下for循环
cd ss
for i in `find ./*.jpg`;
do echo $i;
done
上边的 for
循环会将 ss文件下,所有的以 .jpg
结尾的文件名列出来。需要注意 符号以及变量
$i`。
1月
01
Laravel 5.4默认使用utf8mb4
字符编码,而不是之前的utf8
编码。因此运行php artisan migrate
会出现如下错误:
[Illuminate\Database\QueryException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table users add unique users_email_unique(email))
[PDOException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes
那么问题根源,以及怎么解决呢。
12月
28
场景
假如我们要使用七牛的 token。
- 直接写死在代码调用的地方。 [x]可维护性低
-
写在 config/app.php
文件中。[x]无法区分环境进行配置
-
存储在 .env
文件中,使用 env()
方法直接读取。 [x]虽然解决了环境问题,但不推荐。
-
存储在 .env
和 config/app.php
文件中,然后使用 config()
函数来读取。 [x] 最佳方案
一种方法是最古老的方法,代码可维护性极低,一旦域名变更就只能全局替换。第二种方法无法区分环境,例如本地使用开发环境域名测试,线上才是正式的 CDN 域名。第三种方法虽然解决了环境变量的问题,并且也具备一定的灵活性,但是不够灵活,假如你的网站流量巨大,需要配置几个 CDN 域名,使其在加载静态资源时随机支配域名,这种做法就无法满足需求了。第四种方法既支持环境变量,又具备极高的灵活性,假如遇到同样的 CDN 多域名随机问题,你只需要写一个辅助方法,然后在 config/app.php
中调用即可,不需要动到任何一行业务逻辑代码。
12月
23
如果想在mac下使用windows,用虚拟机安装windows是一个不错的选择。比装双系统好多了。想用就用,不要就卸,就跟安装软件卸载软件一样方便。虚拟机容器比较多,有vm,pd,vbox。因为之前用vbox安装了homestead,那么就用vbox来装windows。
下载windows镜像
https://msdn.itellyou.cn/ 这里有你想要的windows版本,xp,vista,win7,win10,server等。个人比较中意win7,这里选择win7 64位旗舰版。
12月
10
先安装 virtualbox, 以及 vagrant 。 这两个都是免费软件。默认安装即可。安装 virtualbox 时,记得要运行它的pkg文件。
再来安装 homestead.box。