小编Ant*_*erg的帖子

通过URL缓存是一种很好的做法吗?

我正在用PHP构建一个相当大而复杂的CMS,我的计划是在它的某些部分实现缓存(可以为特定的页面/部分打开/关闭缓存).经过一些研究后,我得出结论,使用URL将是查找和检索cahced文件的最佳实践.我的目的是实现一个"整页"解决方案,以避免对应该缓存的所有页面进行突出的查​​询缓存并缓存整个页面.

伪代码将像这样(日期修改排除):

$filename = md5($the_full_url);

if (file_exists($filename)) get_cached_file($filename);

else write_cached_file($filename);
Run Code Online (Sandbox Code Playgroud)

这种方法可以被视为良好做法吗?

php url caching content-management-system

4
推荐指数
1
解决办法
128
查看次数

Javascript ontouchstart/move/end - 得到奇怪的结果

我正在为平板电脑/智能手机构建这个具有滑动功能的图片库。我在 iPad 上得到了非常奇怪的结果,所以我决定一直跟踪到开始,并在不同事件发生时打印出来。

以下代码应该在我用手指完成滑动后发出类似以下内容的警报:“start.move.move.move.end”(“移动”的次数由滑动操作的时间长短决定)。

        itemWrap[0].ontouchstart = function(e) {
            _self.msg.push("start");

        }

        itemWrap[0].ontouchmove = function(e) {
            _self.msg.push("move");
        }

        itemWrap[0].ontouchend = function(e) {
            _self.msg.push("end");

            // join messages and alert to browser
            msg = _self.msg.join(".") || "empty";
            alert(msg);
        }
Run Code Online (Sandbox Code Playgroud)

然而,我收到了非常奇怪的警报,并且它们在 Android/iOS 设备上差异很大。在 Android 上,大多数时候结果看起来都符合预期:

“开始.移动.移动.移动.移动.结束”

“start.end”(轻拂屏幕时)

“start.move.start.end”(每次其他触摸操作都会发生这种情况)

但在 iPad 上我得到了一些非常奇怪的结果。在第一次触摸操作中,我得到了我所期望的结果,但在第二次触摸时,包含结果的警报(“start.move.move.move.end”)在触摸屏幕时立即触发,并且它始终包含之前的结果。当我第三次触摸屏幕时,它再次返回到常规操作,并且对于所有其他触摸操作也是如此。

我四处寻找有类似问题的人,但我似乎得到的最接近的是用户在多点触控操作方面遇到问题(我对此不感兴趣)。关于为什么会发生这种情况有什么建议吗?

javascript touch coordinates swipe

4
推荐指数
1
解决办法
7191
查看次数