ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

使用onload和onerror javascript

2019-06-29 22:21:24  阅读:283  来源: 互联网

标签:javascript asynchronous onload onerror


function loadNextComic()
{
window.scrollTo( 200, 480);
img comic = new Image();
    currentComicNumber++;
    comic.src="Freqpg"+currentComicNumber+".jpg";
    comic.onload = function()
        {
        document.getElementById("comic").src="Freqpg"+currentComicNumber+".jpg";
        document.getElementById("numberOutput").innerHTML=currentComicNumber;
        }
    comic.onerror =lastComicReached();


}

此代码旨在迭代webcomic页面.如果下一页存在,则应加载,并在加载后显示.如果页面不存在,代码应该调用另一个函数,因为这表明我们可能已经到了存档的末尾.不幸的是,这段代码什么都不做.甚至滚动功能都会中断.

function loadNextComic()
{
window.scrollTo( 200, 480);
//img comic = new Image();
    currentComicNumber++;
    //comic.src="Freqpg"+currentComicNumber+".jpg";
    //comic.onload = function()
    //  {
        document.getElementById("comic").src="Freqpg"+currentComicNumber+".jpg";
        document.getElementById("numberOutput").innerHTML=currentComicNumber;
    //  }
    //comic.onerror =lastComicReached();


}

注释掉img代码的代码正确地进行了页面,直到当然我用完了页面(连续且可靠地命名),看到这个数字每周如何变化,我不能简单地硬编码最后一页的数字.在查看网站上的其他示例后,我尝试使用img.onerror和onload代码.很明显,我一直在摸索着像这样的白痴.我已经在几个地方读过异步执行打破错误,但我认为这应该解释了这一点.

如何使img.onload和onerror函数起作用?如果代码异步执行,你如何进行结构化编程?

解决方法:

您需要在更改src之前声明它们

你也正在替换onerror,因此你需要删除(),除非lastComicReached返回一个函数

最后img漫画是无效的语法,你的意思是var漫画

var comic = new Image(); 
comic.onload = function() {
  document.getElementById("comic").src="Freqpg"+currentComicNumber+".jpg";
  document.getElementById("numberOutput").innerHTML=currentComicNumber;
}
comic.onerror =lastComicReached; // remove the () here!!
comic.src="Freqpg"+currentComicNumber+".jpg";

标签:javascript,asynchronous,onload,onerror
来源: https://codeday.me/bug/20190629/1330220.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有