首页 > 编程知识 正文

ajax成功函数的参数,懒加载和预加载的区别

时间:2023-05-05 03:31:55 阅读:29564 作者:2264

自动加载的主要方法

如何确定元素是否显示在窗口的可见范围(在浏览器的顶部和底部之间,肉眼可见)。 编写函数isVisible的实现

功能is visible ($ node ) {

var winHeight=$(window ).height ()//获取视口的高度

varscrollTop=$(window ).scrolltop )//从上到下获取视口的垂直滚动距离

var $offset=$node.offset ().top //将所选元素top获取为距文档的偏移距离

获取包含var $ height=$ node.outheight (true ) margin高度的选定元素

if (winheight scroll top $ offset $ offset $ height scroll top )

返回真;

}else{

返回假;

}

}

}

确定在窗口滚动时一个元素是否出现在视口的范围中。 每次出现都打印true。 用代码实现:

var $div=$('div ' )

$(window ).on )、scroll )、function ) }

$div.not('.show ' ).each () function ) )。

if(isvisible($ ) (this ) ) ) ) ) ) )。

showdiv($ ) this )

}else{

控制台. log (' false ) )。

}

() )

() )

functionshowdiv($div ) {

$ div.each (功能) ) )。

控制台. log (' true ) )。

() )

}

功能is visible ($ node ) {

var winheight=$ (window.height ) )。

var scrollTop=$ (窗口).scroll top (

var $offset=$node.offset.top

var $ height=$ node.outheight (true ) )。

if (winheight scroll top $ offset $ offset $ height scroll top )

console.log(winHeight: )、winheight、) scrollTop: )、scrollTop、($offset: )、$offset、($height360 )

返回真

}else{

返回假

}

}

当窗口滚动时,确定元素是否显示在窗口的显示范围中。 元素首次出现时在控制台上打印true,然后再次出现时不执行任何操作。 用代码实现

var$div=$(div );

$(window ).on )、scroll )、function ) }

$div.not('.show ' ).each () function ) )。

if(isvisible($ ) (this ) ) ) ) ) ) )。

showdiv($ ) this )

}else{

控制台. log (' false ) )。

}

() )

() )

functionshowdiv($div ) {

$ div.each (功能) ) )。

$(this ).addclass('show ' ) )。

控制台. log (' true ) )。

() )

}

功能is visible ($ node ) {

var winheight=$ (窗口).height );

var scrolltop=$ (窗口).scroll top );

var $offset=$node.offset ().top;

var $ height=$ node.outer height (true );

if (winheight scroll top $ offset $ offset $ height scroll top )

console.log(winHeight: )、winheight、) scrollTop: )、scrollTop、($offset: )、$offset、($height360 )

返回真;

}else{

返回假;

}

}

懈怠图像读取的原理是什么?

自动加载是利用ajax与服务器交换信息,在不重新加载网页的情况下更新网页。 自动加载的目的主要是节省大型网站的流量,让用户看到一个部分,然后加载另一个部分。

对于这个问题,我们想出了解决办法。 在该图像显示在用户的视线范围内之前,不加载该图像。

重要步骤:

判断是否可以看到图像: (如果从画面滚动的高度的窗口高度的图像到页面上部有距离,则可以看到该图像();

转换图像可视状态:修正图像原始src值。 可以对各图像的src设定相同的初始值。 这样,只有一次发出请求。 如果不设定的话,可能会出现“x”,很难看。 如果显示图像,请更改图像的src属性,以便可以加载图像的内容。

必要的知识点

服务器

npm i -g http-server

http-server -c-1

outline : 1px固态硬盘; 边框与边框不同的是不占地方

页面加载如果页面IMG的高度设置为height:100%,则在页面加载时刷新。 这是因为加载页面时,如果图像没有读完高度就不知道。 消除这个bug的诀窍是在这个IMG中放入DIV制作容器。 然后设定此div的padding-top:100%,在位置上定位img。

无法禁用input功能并点击等。

window.onresize事件在窗口或框架调整大小时发生。

ul.insertadjacenthtml (' before end ',' reuqest.responseText ' )。

通过将String对象拆分为String数组,然后使用指定的分隔字符串将字符串拆分为子字符串,来确定每个拆分的位置。

button.disabled=true/false按钮无效

list.insertadjacenthtml (' before end ',' text ' )将文本内容发送到html的末尾

object.getBoundingClientRect ()获取object相对于视口左上角的绝对位置top bottom left right

document.documentelement.clientheight获取当前视口的高度

html中的img src=' '对应于img src='当前页面地址'。 若要防止浏览器自动添加地址,请在src='about:blank '中单击

预加载有两种方法。

var Imageinload=new Image (; Imageinload.src='xxxx '

$(selector ).not ) #xx选择selector的ID=xx的元素

$(selector ).each(function ) )方法定义要为每个匹配元素执行的函数。

浏览博客

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。