首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javascript :通过Javascript加载图像

Javascript :通过Javascript加载图像
EN

Stack Overflow用户
提问于 2012-03-22 18:44:32
回答 5查看 9K关注 0票数 0

这是教程中的一段javascript代码,在教程中,他们试图将图像加载到画布上,然后进行一些操作。为了让它更容易理解,我省略了大部分不相关的代码。

1)我不明白为什么包含图片文件名的那一行总是放在imageObj.onload函数的下面。这有关系吗?从什么时候开始加载图像?

2)如果我忘记放入镜像文件的源文件,会发生什么情况?

代码语言:javascript
复制
<script>
            window.onload = function(){
                ....

                var imageObj = new Image();

                imageObj.onload = function(){
                    ....
                    ....
                    });

                    ....
                    ....

                };
                imageObj.src = "yoda.jpg";

            };
        </script>
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-03-22 18:52:02

这在某种程度上是一个历史问题。来自.onload.src的顺序并不重要(从技术上讲,这两种顺序都有效),问题是,一旦设置了src属性,一些浏览器(有些= Internet Explorers)将从缓存中获取图像。

这就是为什么在设置src之前总是应该声明一个onload处理程序。

如果您只是忘记设置src属性,那么什么都不会发生。如果您不再持有对该对象的任何引用或闭包,它将尽快被垃圾回收。

票数 5
EN

Stack Overflow用户

发布于 2012-03-22 18:46:13

加载是通过设置.src属性触发的。

在(一些?)在较早的浏览器中,如果处理程序是在设置属性之后注册的,则不会调用该处理程序,特别是如果图像已经在缓存中,因此会立即“加载”。

如果您忘记设置该属性,则不会发生任何事情。

票数 2
EN

Stack Overflow用户

发布于 2012-03-22 18:58:18

代码语言:javascript
复制
window.onload = function(){
                // This is function 1 
                // This portion will execute when window has loaded completely.
                // In simple words, page has been downloaded completely.

                var imageObj = new Image();

                imageObj.onload = function(){
                    // This is function 2
                   // This portion will execute when image has loaded completely 
                    });

                    ....
                    ....

                };
                imageObj.src = "yoda.jpg";

因此,函数1和函数2将在此行imageObj.src = "yoda.jpg";之后执行

这是你第一个问题的答案。在javascript中,代码从上到下依次执行,但函数内部的代码只有在调用该函数时才会执行。

如果你不给出src属性,就没有图片可供下载,因此函数2也不会被调用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9820700

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档