这个是我在复习书籍的时候看见的,当时一个同学想通过页面发送请求,但是数据量不是太大,所以用的get方式,但是页面用表单提交请求的话会让页面进行跳转,当时我在网上查了一点资料,发现基本上都是通过ajax请求,无奈现在还没有学习到ajax这一部分,于是翻书,正好看到这里了。所以后面的代码改了过后,一句话解决了问题。

 var chunk = 数据; var url = "http://www.baidu.com"; document.createElement("img").src = url + "&" + chunk;

在Javascript中对于图片格式进行了实现类型为HTMLImageElement继承自HTMLElement,这个类型拥有img标签公有的特性名对应的属性,可以通过这些属性进行设置。 HTMLImageElement类型是一个动态的类型,也就是说不添加进DOM树中还是能够加载,这个过程我把它叫做"预加载",如下:

 var nimg = document.createElement("img"); nimg.src = "http://www.baidu.com/img/baidu_jgylogo3.gif"; //当执行到这一条语句的时候,此时它就会预加载,即使你没有添加进DOM树中,没有添加进DOM树只是你看不见。

如何来验证这个问题?我通过添加load事件来监听是否加载完成,如果加载完成则弹窗,这里我把顺序分成在监听前设置src属性,和监听后设置src属性。 第一种方式:先设置src属性后监听

 var nimg = document.createElement("img"); nimg.src = "http://www.baidu.com/img/baidu_jgylogo3.gif";
  //这里并没有弹窗 

 nimg.addEventListener("load",function(){alert(1)},false); document.body.appendChild(nimg);
  //即使我添加进DOM树还是没有弹窗

第二种方式:先监听后设置src属性

 var nimg = document.createElement("img"); 

 nimg.addEventListener("load",function(){alert(1)},false);

 nimg.src = "http://www.baidu.com/img/baidu_jgylogo3.gif";
 //执行到这里的时候会弹窗,说明监听到事件。

HTMLImageElement类型的简便利用的更多相关文章

  1. 将如下三组不同类型的数据利用DataInputStream和DataOutputStream写入文件,然后从文件中读出

    三组数据如下: {19.99 , 9.99 , 15.99 , 3.99 , 4.99} {12 , 8 , 13 ,29 ,50} {"Java T-shirt" , " ...

  2. 求任意长度数组的最大值(整数类型)。利用params参数实现任意长度的改变。

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  3. 为GCD队列绑定NSObject类型上下文数据-利用__bridge_retained(transfer)转移内存管理权-备

    下面评论的好友“@Jim”给了种新的思路,就是在清除context的函数里面,用“_bridge_transfer”转换context,把context的内存管理权限重新交给ARC,这样,就不用显式调 ...

  4. 判断pdf、word文档、图片等文件类型(格式)、大小的简便方法

    判断pdf.word文档.图片等文件类型(格式).大小的简便方法 很久没发文了,今天有时间就写一下吧. 关于上传文件,通常我们都需要对其进行判断,限制上传的类型,如果是上传图片,我们甚至会把图片转化成 ...

  5. Swift中的集合类型

    一.引子: 在2014年10月TIOBE编程语言排行榜中,Swift位居第18位,从2014WWDC发布会首次公布至今不到半年时间,swift一直受到编程人 员的追捧,其热衷程度并不亚于当红巨星Tay ...

  6. S2-045远程命令执行漏洞的利用

    Apache Struts2 远程命令执行 (S2-045) 漏洞介绍: 漏洞编号:S2-045CVE编号:CVE-2017-5638漏洞类型:远程代码执行漏洞级别:高危漏洞风险:黑客通过利用漏洞可以 ...

  7. 深入理解Java 8 Lambda(语言篇——lambda,方法引用,目标类型和默认方法)

    作者:Lucida 微博:@peng_gong 豆瓣:@figure9 原文链接:http://zh.lucida.me/blog/java-8-lambdas-insideout-language- ...

  8. TypeScript中的枚举类型

    TypeScript拓展了Javascript原生的标准数据类型集,增加了枚举类型(enmu)和其他语言一 样 它提供我们一种数字类型的值,用来设置由于辨别的名字和方法 enum Students { ...

  9. 6.Swift协议|扩展|访问权限|异常调试|类型转换|运算函数|ARC|类类型初试化器|值类型初始化器

    1. 协议(Protocol):与OC之间唯一不同的是Swift中的协议不管是属性还时方法全部是必须实现的 /** protocol*/ protocol FullNamed { /** 计算属性申明 ...

随机推荐

  1. 使用纯代码定义UICollectionView和自定义UICollectionViewCell

    1.自定义UICollectionView 2.实现<UICollectionViewDataSource,UICollectionViewDelegateFlowLayout,UICollec ...

  2. Android下pm命令详解

    在看相关PackageManager代码时,无意中发现Android 下提供一个pm命令,通常放在/system/bin/下.这个命令与Package有关,且非常实用.所以研究之. 0. Usage: ...

  3. Web.xml 中增加log4j

    配置文件例如以下.web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app versio ...

  4. 使用日志服务LogHub替换Kafka

    https://yq.aliyun.com/articles/35979#index_section

  5. PAT 1017

    1017. Queueing at Bank (25) Suppose a bank has K windows open for service. There is a yellow line in ...

  6. (收藏)sokcet编程

    C# Socket网络编程精华篇 C#编写高性能网络服务器(源码) .net自动更新组件Ant 客户端服务器通信demo(附源码) 有了WCF,Socket是否已人老珠黄? Socket服务器整体架构 ...

  7. dl dd dt与ul li

    像这种格式的网页,可以用dl来实现,比较方便

  8. [转]Oracle 调用存储过程并显示结果集 Oracle.DataAccess.Client OracleDbType.RefCursor

    本文转自:http://liye9801.blog.163.com/blog/static/6019703200901244448950/ 今天学习了一个Oracle中的存储过程,一开始便被如果返回结 ...

  9. 搭建高可用的MongoDB集群

    http://www.csdn.net/article/2014-04-09/2819221-build-high-avialable-mongodb-cluster-part-1/1 在大数据的时代 ...

  10. ASP.NET5/MVC6 下生成Helppage

    https://github.com/domaindrivendev/Ahoy 打开nuget包管理器,搜索Swashbuckle 打开Startup.cs文件在ConfigureServices方法 ...