相关疑难解决方法(0)

使用jQuery检查是否加载了图像(没有错误)

我正在使用JavaScript与jQuery库来操作无序列表中包含的图像缩略图.当图像被加载时,它会做一件事,当发生错误时它会做其他事情.我正在使用jQuery load()和error()方法作为事件.在这些事件之后,我检查.complete的图像DOM元素,以确保在jQuery注册事件之前图像尚未加载.

它正常工作,除非在jQuery注册事件之前发生错误.我能想到的唯一解决方案是使用img onerror属性在全局某个地方(或在它自己的节点上)存储一个"标志",表示它失败,因此jQuery可以在检查.complete时检查"存储/节点".

谁有更好的解决方案?

编辑:粗体主要点并在下面添加额外的细节: 我正在检查图像是否完整(也称为加载)我在图像上添加加载和错误事件后.这样,如果在事件被注册之前加载了图像,我仍然会知道.如果在事件之后未加载图像,则事件将在事件发生时进行处理.这个问题是,我可以很容易地检查图像是否已经加载,但我无法判断是否发生了错误.

javascript jquery dom image jquery-events

215
推荐指数
7
解决办法
29万
查看次数

与浏览器无关的方式来检测何时加载图像

在IE中,您可以onreadystatechange.有载入,但我读了可怕的东西.jQuery用"就绪"很好地包装了DOM的加载事件.我似乎只是不知道另一个很好的库的图像加载实现.

上下文是我动态生成图像(通过服务器回调),可能需要一些时间下载.在我的IE-only代码中,我设置了img元素的src,然后当onreadystatechange事件以"完成"状态触发时,我将它添加到DOM,以便用户看到它.

我对"原生"JavaScript解决方案或指向执行工作的库的指针感到满意.那里有很多图书馆,我确信这是我不知道正确的图书馆的情况.也就是说,我们已经是jQuery用户了,所以我并不急于添加一个非常大的库来获得这个功能.

javascript dom

56
推荐指数
3
解决办法
5万
查看次数

Javascript IN运算符兼容性

有人可以告诉我,哪个ECMA版本的IN运算符可用以及哪些浏览器(版本)支持它?

说明:

IN运算符可以像下面这样使用:

var myObject = {
    Firstname: 'Foo',
    Lastname: 'Bar'
};

if('Lastname' in myObject){
    // Lastname is an attribute of myObject
}
Run Code Online (Sandbox Code Playgroud)

javascript ecma262

47
推荐指数
1
解决办法
1万
查看次数

对象没有hasOwnProperty方法(即它是未定义的) - IE8

这看起来很奇怪.

这是我在IE8控制台中的实验:

typeof obj1 // "object"
obj1.hasOwnProperty // {...}

typeof obj2 // "object"
obj2.hasOwnProperty // undefined
Run Code Online (Sandbox Code Playgroud)

关于什么可能导致这个问题的任何想法?

javascript internet-explorer-8 ie-developer-tools hasownproperty

27
推荐指数
1
解决办法
2万
查看次数

如何使用jQuery获取实际图像宽度和高度?

在页面上,我显示了100个图像,其中宽度和高度属性已更改.图像ID处于循环中.

如何在此循环中获取原始图像大小?

$(this).appendTo(".prod_image").attr('height',150).attr('width',150).attr('title','').attr('name','').attr('alt','').attr('id','id'+i);
Run Code Online (Sandbox Code Playgroud)

jquery image

19
推荐指数
3
解决办法
5万
查看次数

将jQuery元素转换为常规dom元素

常规的dom元素如下:

document.getElementById('a')

要么

document.createElement('div')

但是jQuery以另一种格式返回元素,所以例如我想将返回的内容转换为与返回$('#a')的内容相同的结果.document.getElementById('a')

这可能使用jQuery吗?

谢谢

javascript jquery

14
推荐指数
3
解决办法
6836
查看次数

调整大小后获取实际图像大小

我有一个填充缩略图的页面,用css调整大小150x150,当我点击缩略图时,页面变暗,并且图像显示为真实尺寸.

目前,我必须手动创建一个包含所有图像的实际高度的数组.为了解决设计问题+减少我的图库的手动操作,我需要在调整大小(CSS)后获得图像的实际高度.

我试过了:

var imageheight = document.getElementById(imageid).height;
Run Code Online (Sandbox Code Playgroud)

和:

var imageheight = $('#' + imageid).height();
Run Code Online (Sandbox Code Playgroud)

但两者都返回150pxCSS分配的属性.我怎么解决这个问题?谢谢

javascript css jquery

14
推荐指数
2
解决办法
9989
查看次数