img.width一直是0的问题--记录(二)

var img=new Image();

img.src="图片路径";

然后调用

img.width

img.height

你会发现值是0;

这是因为页面在加载的时候图片是最后的。虽然img.src有图片路径但是你img.width的时候图片并没有加载,可以这么解决:

img.onload = function () 

  img.width

这时就不会是0了。

有时为了方便会判断缓存中有没有图片,可以这么写:

if(img.complete) {

    alert('该图片已经存在于缓存之中');

}else{

    alert('图片不存在缓存之中');

    img.onload = function() {

        

    }

}

转载:http://www.cnblogs.com/zqzjs/p/4512988.html

时间: 2024-09-10 09:21:22

img.width一直是0的问题--记录(二)的相关文章

asp.net 4.0 使用log4net记录错误日志例子

原来也一直用log4net记录日志,但是是在.net2.0 上用的.最近用到新的项目是vs2015开发的,要用log4net,今天将.net 4.0 使用log4net记录错误日志的步骤,分享给大家. 1.首先到http://logging.apache.org/log4net/download_log4net.cgi 下载最新版本的log4net.如果不需要修改log4net的源代码的话,建议下载二进制的就可以了.最新版本是log4net 1.2.15. IT分享 2.下载好log4net.d

irect 8-加入了SetDisplayMode(WIDTH,HEIGHT,BIT,0,0)这行代码之后原来运行得好好的程序会自动退出,求解?

问题描述 加入了SetDisplayMode(WIDTH,HEIGHT,BIT,0,0)这行代码之后原来运行得好好的程序会自动退出,求解? 部分代码如下: #define WIDTH 640 #define HEIGHT 480 #define BIT 8 int WINAPI WinMain(HINSTANCE hinstance,HINSTANCE hpreinstance,LPSTR lpcmdline,int ncmdshow) { ... //Create DirectDraw if(

ASP.NET 2.0数据教程之二:创建一个业务逻辑层

本系列文章导航 ASP.NET 2.0数据教程之一:创建一个数据访问层 ASP.NET 2.0数据教程之二:创建一个业务逻辑层 ASP.NET 2.0数据教程之三:母板页和站点导航 ASP.NET 2.0数据教程之四:使用ObjectDataSource展现数据 ASP.NET 2.0数据教程之五:声明参数 ASP.NET 2.0数据教程之六:编程设置ObjectDataSource的参数值 ASP.NET 2.0数据教程之七:使用DropDownList过滤的主/从报表 ASP.NET 2.0

mysql中set @rowNum=0实现查询记录的行号

这个问题源于SF上的一个问题: 字段 id,shares // 分享次数 记录 1, 2 2, 0 3, 1 4, 0, 5, 1 需求 计算某条记录的分享排行 假设计算id 2 的分享排行 则是4 sql 能算出某条记录的 分享排行吗?   SQLServer提供了ROW_NUMBER()函数可以实现. 但是mysql没有提供类似的函数,网上查了点资料,可以利用预定义变量解决. 实验数据: mysql有点麻烦,给一下思路,数据表如下: mysql没有像sql server一样提供记录行数的函数

网易LOFTER安卓3.0上线 移动记录轻而美

12月3日,网易LOFTER宣布 正式推出安卓移动端3.0新版. 新版移动端增加了热门内容聚焦.移动端活动平台.兴趣领域选择.社交好友查找.易信微信朋友圈分享等全新实用功能,方便用户快速.漂亮.有趣地记录生活,并能更直观地管理自己的博客:新版LOFTER还采用了全新UI设计,融入不少趣味的动画,使交互体验更加活泼.流畅.该版本已在豌豆荚平台首发,据悉,LOFTER iOS新版也将于近日发布. "发现页面"扩容,展示更清晰 目前LOFTER拥有数百万热爱记录和分享的用户,每天产生日志数量

教你快速清除 IE7.0 的浏览记录

很多时候,无论是出于保证计算机性能还是数据安全方面的考虑,我们常常需要及时清除浏览器的历史记录,包括浏览器缓存.所记录的Cookies.历史记录.密码等.一般而言,在IE7(Internet Explorer 7)中,相应的是操作是通过"Internet 选项"之"常规选项卡"中的"删除浏览历史记录"进行的,不过,客观地讲,这样的操作需多个步骤,往往显然效率不足.因此,如果您需要经常进行类似的操作,不妨考虑直接为相应操作建立桌面快捷方式,这样,需

ASP 3.0高级编程(二十三)

编程|高级 第6章 活动服务器组件在前几章中,我们已经研究了两类不同的对象:一类是ASP对象模型的内置部分,另一类是脚本运行期库提供的对象.本章将介绍第三类能用于ASP的对象,取名为活动服务器组件(或者就称为服务器组件).这些组件在很多场合下就如同在浏览器或在像Visual Basic编程环境中用于客户端脚本中的传统ActiveX控件一样,但是这些组件可在服务器上运行,而不是一个只能运行在客户机上的对象.现在的问题是:这些组件来自哪里?其中一部分是由常规的ASP/IIS安装程序提供的,而另一部分

ASP 3.0高级编程(二十八)

编程|高级 6.2.11 Logging Utility组件Logging Utility组件是ASP 3.0的新组件,提供了访问日志文件的方法,这个日志文件是由服务器支持的用于Web和FTP网站的IIS创建的.1. Logging Utility组件的成员Logging Utility组件提供了六种方法,能读取日志文件的内容.把新记录写进已存在的日志文件中.这些方法和上一章讨论的FileSystemObject对象的方法有相似性,如表6-9所示:表6-9 Logging Utility组件的方

ASP.NET 2.0数据教程之二十九:用DataList和Repeater来显示数据

返回"ASP.NET 2.0数据教程目录" 导言 在之前的28篇教程的例子里,如果我们需要显示某个数据源的多条 记录,我们使用GridView .GridView 的一行表示数据源的一条记录,列表示一个字 段.虽然GridView 用来显示数据,分页,排序,编辑,删除非常的方便,但是有点臃肿 .而且GridView 结构的标记是固定的-它包含一个带有<tr>和 <td>的HTML <table>标记. 为了在显示多条记录时,有更好的 自定义功能,AS