关于前端惰性加载(jquery_lazyload)的使用和原理分析

1.前言

有时我们会有这样的需求,当网页有很多张图片的时候,我们不希望一次性就把图片加载完,而是希望当浏览器滑动到指定位置的时候再加载,这样可以节省带宽,它也能帮助减轻服务器负载。那么这种需求就需要利用lazyload了。

jquery_lazyload.js是基于jq的一个扩展,需要引入jq后使用。

2.使用方法

2-1.引入jquery和lazyload拓展

<script src="jquery-1.11.0.min.js"></script>
<script src="jquery.lazyload.js?v=1.9.1"></script>

2-2.通过class指定标签,src指定家在前的图片,data-original指定加载后的图片。

<img class="lazy" src="img/jd.png" data-original="img/bmw_m1_hood.jpg">
<img class="lazy" src="img/jd.png" data-original="img/bmw_m1_side.jpg">

2-3.传递参数绑定lazyload事件

<script type="text/javascript" charset="utf-8">
  $(function() {
      $("img.lazy").lazyload({
      placeholder : "img/grey.gif", //用图片提前占位
     // placeholder,值为某一图片路径.此图片用来占据将要加载的图片的位置,待图片加载时,占位图则会隐藏
      effect: "fadeIn", // 载入使用何种效果
    // effect(特效),值有show(直接显示),fadeIn(淡入),slideDown(下拉)等,常用fadeIn
      threshold: 200, // 提前开始加载
    // threshold,值为数字,代表页面高度.如设置为200,表示滚动条在离目标位置还有200的高度时就开始加载图片,可以做到不让用户察觉
     event: 'click',  // 事件触发时才加载
    // event,值有click(点击),mouseover(鼠标划过),sporty(运动的),foobar(…).可以实现鼠标莫过或点击图片才开始加载,后两个值未测试…
     container: $("#container"),  // 对某容器中的图片实现效果
    // container,值为某容器.lazyload默认在拉动浏览器滚动条时生效,这个参数可以让你在拉动某DIV的滚动条时依次加载其中的图片
    failurelimit : 10 // 图片排序混乱时
     // failurelimit,值为数字.lazyload默认在找到第一张不在可见区域里的图片时则不再继续加载,但当HTML容器混乱的时候可能出现可见区域内图片并没加载出来的情况,failurelimit意在加载N张可见区域外的图片,以避免出现这个问题.
     });
 });
</script>

3.原理分析

TODO

4.demo下载

链接:https://share.weiyun.com/5bc1ca957d5074cffca0353ac0b0e2b0 (密码:p7S1)

Unity中使用WebGL来实现第一人称鼠标控制相机旋转可以按照以下步骤进行。 首先,在Unity编辑器中,创建一个摄像机对象,并将其设置为主摄像机。确保这个摄像机与玩家角色相对应,并具有合适的位置和旋转。 然后,为了捕捉并响应鼠标输入,需要编写一段脚本。创建一个名为"MouseLook"的新C#脚本,并将其添加到摄像机对象上。 在脚本中,首先声明一个用于控制相机旋转速度的变量。例如,可以创建一个浮点类型的变量"rotationSpeed",并将其值设置为合适的大小,以便对玩家的鼠标移动进行响应。 然后,在脚本的Update()函数中,获取鼠标在水平和垂直方向上的移动距离。可以使用Input.GetAxis()函数并传入适当的参数来实现这一点。 接下来,将获取到的鼠标移动距离乘以旋转速度,并将其应用到摄像机的旋转上。可以使用Transform.Rotate()函数来实现这一点。传入鼠标移动的y值作为旋转的x轴值,传入鼠标移动的x值作为旋转的y轴值,这样可以实现根据鼠标移动旋转相机视角。 最后,在Unity编辑器中将脚本应用到摄像机对象上。然后,运行游戏,并使用鼠标进行旋转控制移动鼠标时,摄像机会相应地旋转。 以上是使用Unity WebGL实现第一人称鼠标控制相机旋转的基本步骤。根据具体需求和实现方式的不同,可能需要对代码进行一些自定义和修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值