图片预加载和延时加载

预加载,就是需要用之前就把图片缓存起来。

应用场景:图片浏览器,某些隐藏的图片显示或者是新增dom节点里面的图片。

实现方式:1,采用Image对象提前缓存图片,代码如下:

function loadImage(url, callback) {
    var img = new Image(); //创建一个Image对象,实现图片的预下载
    img.src = url;

    if (img.complete) { // 如果图片已经存在于浏览器缓存,直接调用回调函数
        callback.call(img);
        return; // 直接返回,不用再处理onload事件
    }

    img.onload = function () { //图片下载完毕时异步调用callback函数。
        callback.call(img);//将回调函数的this替换为Image对象
    };
};

参考文章:javascript图片浏览器的核心——图片预加载

2,采用css spirits和img sprites可以提前下载所有图片,需要用的时候就直接从缓存用了。 更多内容

订座模拟

电影票终端的屏幕宽度是有限的,不能完美的展示合适的座位大小。主要是观众使用触摸屏的终端很难点中自己想要的座位,于是有了一个折中的办法,将频幕分成两个部分。下部显示座位示意图,点击示意图圈选片区放大到上部。再到上部进行座位选择。效果图如下

选座效果图

选座效果图

我也试试:选座

javascript定义方法的四种途径

最近在看一本名叫《javascript设计模式》的书,感觉还不错,记录一些学习内容当作读书笔记。

第一章讲的是javascript的灵活性,用四种不同的方法实现同一件事情。

1,最常用的方式,但是无法保存状态

/*开始和结束动画*/
function startAnimation(){
    ...
}
function stopAnimation(){
    ...
}

更多内容