一、使用<img>标签导入图片
做前端时,图片展示随处可见,用标签能快速搞定,HTML里插入就能弄进网页了。但如果想搞点花样,用jQuery操纵下DOM动起来就是了。
先得知道怎么用HTML的标签放图片。基本上就是在这个src属性里给定图片位置,再拿alt属性当成备胎,就算图片出问题了也能用它提示信息!举例来说就像这样子:
html
如果要使用jQuery动态导入图片,可以通过以下代码实现:
javascript //创建一个img元素 var img =$("<img>"); //设置img元素的src属性9f80f6fa676915ea31ca562019e60104.attr("src","image.jpg"); //将img元素添加到页面指定位置 $("body").append(img); 这段代码能帮你在网页上拖拽进一个图片~不过还是得提醒下,处理DOM的时候,记得确认图片已经准备好了,别着急搞事,否则可能会出错或者显示不正常。 二、作为背景图导入图片 除了用标签导入照片,你还能把它当作元素的背景图导入!这就需要在CSS里设置元素的background属性了。而在jQuery中?你也可以做到! 在CSS中,我们可以这样设置一个元素的背景图:
css
.element {
背景,就是给图像换个颜色。
}
用jquery的话,你只需要下面这段代码把图片做背景就行了哦:
//选取指定元素,并设置其背景图
给”.element”加点背景,放个”image.jpg”上去就行了。
通过上面的代码,你就能把一个图片变成某个特定元素的背景了哟~但是别忘了,使用之前要先确保图片弄好了并能顺利打开!
三、异步加载图片
在真的做项目的时候,如果网页上有好多图片,你一下子全加载进去,网页就慢得像蜗牛了或者甚至崩溃都有可能。所以,我们处理大堆图片的时候,得想着用一种叫“异步加载”的方法让网页速度快起来,让用户用起来更舒心。
用jQuery这个大家喜爱的库,你就可以轻松地异步加载多张图片了!记住,先使用$.Deferred对象,这东西能帮咱们把任务分类;然后,再利用$.when()方法,就可以看到所有图片都加载完了,再做下一步动作~这里有一个简明易懂的例子给你们看看哈:
$(document).ready(function(){ $('body').append(''); });
var deferreds =[];
这个小程序里有几张图片:image1,image2,和image3。
顺带着也把图片那块儿给搞定了,这样做就是把函数(index, value)套上每个图片。
var deferred =$.Deferred();
var img = new Image();
img.onload(,=完成;
img.src = value;
deferreds.push(deferred);
});
当$明确后,它会自动完成所有的等待,完事之后,它就会给你搞个大新闻告诉你。
//所有图片加载完成后执行相关操作
这么搞,咱们能实现同时下载几张图片的功能,等所有图片都搞定了咱们还能用这个时间做点啥。这样子性能就提高,用户也更爽!
四、响应式设计与图片导入
现在手机越来越普遍,各种屏幕尺寸也大不相同,所以能适应各种屏幕的响应式设计变得非常重要了。搞响应式设计时,怎么给不同屏幕导入并展示相符分辨率的图片就变得特别关键。
借助jQuery和媒体查询这些工具,可以很轻松地根据不同的设备分辨率来更换图片资源,无论是大小还是清晰度都能灵活控制~比如说,如果想让网页适应不同的屏幕大小,只需在CSS里设定每个相应分辨率下要用什么背景图就行!
div { background-image: url('image.jpg'); }
768像素以下屏幕尺寸瞧——
.element {
背景图就是小图片的样子,就是 small-image.jpg那个。
}
宽度大于等于769像素的屏幕上使用
使用图片:’大个头的图.jpg’
用jQuery动不动就改CSS属性,可以根据大小不同的屏幕随时换个背景图,这样在响应式设计里就能享受到更棒的用户体验!
五、懒加载与延迟加载
懒加载就是在你滑动网页到某个地方才开始下载必要的图片等信息,而延迟加载是先让其他内容慢慢加载,等你看到的时候再把特定的部分加入进来,这样可以大大加快你第一次打开页面的速度。
$(document).ready(function(){ $('div').css('background-image', 'url(image.jpg)'); });
咱们用 jQuery 这个好用的插件 LazyLoad 就能搞定懒加载和延迟加载!这玩意儿主要就是靠滚动事件或者计时器啥的来决定什么时候加载图啊文之类的东西。
六、基于Ajax技术获取并显示远程服务器上的图片
实战项目不仅用自己电脑的东西,有时候还要拿网上服务器里的图来用。你知道吗?利用jQuery这个工具箱里面的Ajax功能,咱们可以轻而易举地向服务器要数据,然后把它显示成网页上的内容
用简单的$.ajax()或者$.get()、$.post()这些方法,咱们就可以给服务器发要求,然后收到对应的数据比如JSON格式啥的。收到后,咱们就能看看结果,做出相应的操作和展示了。就算是想看看远在天边服务器里藏着的图片资源,也是可以那么做滴!
七、处理多种格式和类型的图片
现在网上冲浪,网站开发变得越来越重要了,其中就包括用jQuery加载各种格式图片的任务。你得了解各种图片格式的特点,比如WebP这类网站上常用的格式,还有SVG这样更高级一点的图。所以在利用jQuery加载图片时,一定要注意适应这些变化,否则就有可能出现损坏、缺失的情况!
先查查浏览器支不支持各种图片格式啥的呀~比如用Modernizr这类小助手。如果支持,就让图片展示出来;不支持的话,就根据情况进行调整,保证页面正常显示各类图片!
总结
这篇文章就说说jQuery怎么插入图片,一种是标签引入,另一种则是当背景图片用。还谈到了一些跟读取图片有关的话题,比如后台传输速度、页面响应能力、懒加载和Ajax取数据之类的。说到美化网页,怎么处理各路不同形式的图片可是非常关键的!
同时,咱们在实际操作时要注意保证所有用到的方法都能跑得起来,还得应对各种情况
评论0