【问题标题】:Progress Bar Issue (using onloadstart, onloadend, onloadprogress)进度条问题(使用 onloadstart、onloadend、onloadprogress)
【发布时间】:2013-06-03 01:25:35
【问题描述】:

HTML 代码:

<img class="boxImg" src="IMAGE_URL" onloadstart="showProgressBar('#loadBar')" onloadend="hideProgressBar('#loadBar')" />
<div id="loadBar">Loading</div>

Javascript 代码:

function showProgressBar(div) { console.log("Load begin"); $(div).fadeIn(50);}
function hideProgressBar(div) { console.log("Load end");   $(div).fadeOut(50);}

图像加载正常,但没有调用 Javascript 函数(控制台中没有出现任何内容,div 没有效果)。

【问题讨论】:

    标签: javascript jquery html image


    【解决方案1】:

    您正在尝试在 img 元素上使用 onloadstartonloadend。这些就是所谓的progress events

    进度事件目前仅对videoaudio HTML 元素有效。它们在 img 元素上无效。

    【讨论】:

    • 我在 Adob​​e 的这个来源上另有阅读:blogs.adobe.com/webplatform/2012/01/13/…。如果不是这种情况并且您是正确的,那么图像是否有等价物?
    • “但是,由于 HTML 图像元素缺少进度事件,替代方法在 Web 上尚不可行。Adobe 的 Web 平台团队正在提议将图像进度事件添加到 HTML5 规范并在浏览器中实现它们. " - blogs.adobe.com/webplatform/2012/01/13/…
    • 啊...我明白了。谢谢你找到那个。耻辱!你知道图像的等价物吗?
    • 不,但 Adob​​e 已经发起了改变规范的活动,而且看起来它已经更新了。它只是还没有实现。这是 WebKit 的错误跟踪器:bugs.webkit.org/show_bug.cgi?id=76102
    【解决方案2】:

    onloadstart 和 onloadend 仅支持音频和视频标签 - http://www.w3schools.com/tags/av_event_loadstart.asp

    【讨论】:

    猜你喜欢
    • 2020-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-22
    • 2014-06-11
    相关资源
    最近更新 更多