万恶的GAE图床
一直用的 Sa3album ,是从 大菠萝相册 进化而来的,主要是增加了多相册的功能,生成的图片地址也很短了,但是有一个问题,没有扩展名的后缀,导致绝大多数的lightbox都无法使用,Python代码又完全不会改,各种郁闷。
但是要仅仅如此郁闷也就算了,这两天折腾wordpress themes,换了theme以后发现原来对图片控制的width=“570"是死板的,现在不适合了,于是更郁闷了。
于是乎开始搜索能自动调整大小的插件,可是那些插件大多是针对本地上传图片所用的,对外链调用的完全不起作用,于是一度想放弃现在的相册,但是又不太舍得,最后不在google搜索插件了,找到了一段css代码:
当然,其中img的定义要在正文的定义之中,具体每个theme的css定义都不太相同。其中那个选择题是做给IE6用的,max-width也是可以调节的,heartnn现在用的是90%,这也具体问题具体分析吧。另外网上还有一个jQuery代码,如果只为实现这么简单的问题来说,有点大材小用了,不过要配合lightbox是个不错的选择了。
类似的插件倒是有一个,实现的方法也很死板:
| |
现在自动调节算是猥琐的实现了,另一个问题出现了,小图片怎么变大呢,虽然是不会撑开模板了,但是图片总得让人家看清楚吧,于是又在网上折腾。。。终于被我找到一个 Zoom-Highslide ,我用的是 Sa3album ,当然这个插件是不能直接用的了,小小的分析了一下,修改了zoom-highslide.php中的一点点代码,竟然可以用了。
| |
其中,把那些扩展名全都删掉了吧,成了这个样子:
| |
大功告成,顺便提供 两套放大镜的图标 ,用来替换原版highslide那个难看的放大镜(来自 http://tiant.me )。

2010-11-15 补记: 其实highslide是不需要prototype库的,不知道作者为什么要载入它。可以去掉zoom-highslide.php中下面的代码来取消prototype的加载。
2010-11-18 补记: sa3album 的作者ben发布了新的0.2版本,可以进行切换主题了,而且作者在评论中给出了 外链地址的修改方法 ,这下连Zoom Highslide都不用修改了,顺便把修改方法搬到这里来,很简单,只要修改一处代码就好了。
打开models.py,找到
修改为
这样,外链地址的结果就是在原来的基础上加了“#文件名”的状态,再调用的时候就不怕没有扩展名了~~