- function preloadImg(url) {
- var img = new Image();
- img.src = https://mparticle.uc.cn/api/url;
- if(img.complete) {
- //接下来可以使用图片了
- //do something here
- else {
- img.onload = function() {
- //接下来可以使用图片了
- //do something here
- ;
很多场景下 , 单图片预加载并不能满足我们的需求 , 因为像动画这种功能通常都会有很多的图片素材 , 在这种情况下 , 我们可以通过下面的代码来实现多图片的预加载 。
- function preloadImg(listimgs) {
- var def = $.Deferred()
- len = list.length;
- $(list).each(function(ie) {
- var img = new Image();
- img.src = https://mparticle.uc.cn/api/e;
- if(img.complete) {
- imgs[i
= img;
- len--;
- if(len == 0) {
- def.resolve();
- else {
- img.onload = (function(j) {
- return function() {
- imgs[j
= img
- len--;
- if(len == 0) {
- def.resolve();
- ;
- )(i);
- img.onerror = function() {
- len--;
- console.log('fail to load image');
- ;
- );
- return def.promise();
- var list = [......
//此处省略一万个字符
- imgs = [
;
- $.when(preloadImg(list imgs)).done(
- function() {
- //预加载结束
- //do something here
- );
六、验证元素是否为空
- $(document).ready(function() {
- if ($(‘#id‘).html()) {
- // do something
- );
滑动和淡入是我们在使用jQuery做动画时经常会用到的东西 。 如果只是想在用户点击之后展示一个元素的话 , 可以用fadeIn 和slideDown 方法就能完美实现 。 如果想要元素在第一次点击的时候出现 , 然后在第二次点击的时候消失的话 , 可以使用下面的代码实现 。
- Fade $('.btn').click(function () {
- $('.element').fadeToggle('slow');
- );
- Toggle $('.btn').click(function () {
- $('.element').slideToggle('slow');
- );
如果追求代码的更高性能 , 那么在设置事件监听程序时必须要小心 , 只定义一次函数然后把它的名字作为事件处理程序传递是不错的方法 。
- $(document).ready(function(){
- function showMenu(){
- alert('Showing menu!');
- // Doing something complex here
$('#menuButton').click(showMenu);
- $('#menuLink').click(showMenu);
);
在一个新的浏览器tab或窗口中打开外部链接 , 并确保同一个来源的链接能在同一个tab或者窗口中打开 。
- $('a[href^=\"http\"
').attr('target' '_blank');
- $('a[href^=\"//\"
').attr('target' '_blank');
- $('a[href^=\"' + window.location.origin +
- '\"
').attr('target' '_self');
- 服务器|国际乒联服务器出问题 马龙、樊振东等信息遭泄漏
- 本文转自:工人日报这是12月12日在杭州国际博览中心拍摄的首届全球数字贸易博览会现场。|数字化新技术亮相全球数字贸易博览会
- 人工智能|联合国驻华协调员常启德:建立人工智能的国际治理框架势在必行
- 小米科技|“和解可以,但是张汝京必须从中芯国际离职,并且签订为期3年的竞业协议。”
- 亚马逊|亚马逊、速卖通、阿里国际自动和手动广告的核心是什么?自己养买家号测评的好处
- rtx3060|好消息!美国放宽中国芯片限制,长江存储和中芯国际将不再受影响
- 工业机器人|芯片发展超预期,中芯国际加大光刻机采购,ASML:3倍价格拿货!
- 3组数据“亮了”!中芯国际又上一个台阶,梁孟松的坚守果然没错
- 张汝京|“和解可以,但是张汝京必须从中芯国际离职,并且签订为期3年的竞业协议。”
- 押注千亿元!梁孟松也已表态!看来中芯国际是成竹在胸
