前端JS特效第24集:jquery css3实现瀑布流照片墙特效

jquery css3实现瀑布流照片墙特效,先来看看效果:

部分核心的代码如下(全部代码在文章末尾):

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>jquery+css3实现瀑布流照片墙特效 - php中文网</title>
<link rel="stylesheet" type="text/css" href="css/style.css" />
</head>
<body>
<div class="content">
<center>
<br><br>
<b>适用浏览器:360、FireFox、Chrome、Safari、Opera、傲游、搜狗、世界之窗. 不支持IE8及以下浏览器。<br>
<br>来源:<a href="http://php.cn/" target="_blank">php中文网</a><b>
</center>
  <div class="iw_wrapper">
    <ul class="iw_thumbs" id="iw_thumbs">
      <li><img src="images/1.jpg" data-img="images/1.jpg" alt="Thumb1"/>
        <div>
          <h2>Serenity</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/2.jpg" data-img="images/2.jpg" alt="Thumb2"/>
        <div>
          <h2>Silence</h2>
          <p>Separated they live in Bookmarksgrove right at the coast of the Semantics.</p>
        </div>
      </li>
      <li><img src="images/3.jpg" data-img="images/3.jpg" alt="Thumb3"/>
        <div>
          <h2>Abstraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/8.jpg" data-img="images/8.jpg" alt="Thumb8"/>
        <div>
          <h2>Happiness</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/9.jpg" data-img="images/9.jpg" alt="Thumb9"/>
        <div>
          <h2>Greatness</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/10.jpg" data-img="images/10.jpg" alt="Thumb10"/>
        <div>
          <h2>Abstraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/6.jpg" data-img="images/6.jpg" alt="Thumb6"/>
        <div>
          <h2>Virtue</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/7.jpg" data-img="images/7.jpg" alt="Thumb7"/>
        <div>
          <h2>Beauty</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/8.jpg" data-img="images/8.jpg" alt="Thumb8"/>
        <div>
          <h2>Happiness</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/12.jpg" data-img="images/12.jpg" alt="Thumb12"/>
        <div>
          <h2>Greatness</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/4.jpg" data-img="images/4.jpg" alt="Thumb4"/>
        <div>
          <h2>Attraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/5.jpg" data-img="images/5.jpg" alt="Thumb5"/>
        <div>
          <h2>Growth</h2>
          <p>A small river named Duden flows by their place and supplies it with the necessary regelialia.</p>
        </div>
      </li>
      <li><img src="images/6.jpg" data-img="images/6.jpg" alt="Thumb6"/>
        <div>
          <h2>Virtue</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/7.jpg" data-img="images/7.jpg" alt="Thumb7"/>
        <div>
          <h2>Beauty</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/10.jpg" data-img="images/10.jpg" alt="Thumb10"/>
        <div>
          <h2>Abstraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/11.jpg" data-img="images/11.jpg" alt="Thumb11"/>
        <div>
          <h2>Attraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/3.jpg" data-img="images/3.jpg" alt="Thumb3"/>
        <div>
          <h2>Virtue</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/13.jpg" data-img="images/13.jpg" alt="Thumb13"/>
        <div>
          <h2>Happiness</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/14.jpg" data-img="images/14.jpg" alt="Thumb14"/>
        <div>
          <h2>Serenity</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/2.jpg" data-img="images/2.jpg" alt="Thumb1"/>
        <div>
          <h2>Virtue</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/4.jpg" data-img="images/4.jpg" alt="Thumb2"/>
        <div>
          <h2>Serenity</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/11.jpg" data-img="images/11.jpg" alt="Thumb11"/>
        <div>
          <h2>Attraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/12.jpg" data-img="images/12.jpg" alt="Thumb12"/>
        <div>
          <h2>Virtue</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/13.jpg" data-img="images/13.jpg" alt="Thumb13"/>
        <div>
          <h2>Happiness</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/14.jpg" data-img="images/14.jpg" alt="Thumb14"/>
        <div>
          <h2>Serenity</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/2.jpg" data-img="images/2.jpg" alt="Thumb1"/>
        <div>
          <h2>Virtue</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/4.jpg" data-img="images/4.jpg" alt="Thumb2"/>
        <div>
          <h2>Serenity</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/6.jpg" data-img="images/6.jpg" alt="Thumb3"/>
        <div>
          <h2>Attraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/8.jpg" data-img="images/8.jpg" alt="Thumb4"/>
        <div>
          <h2>Serenity</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/12.jpg" data-img="images/12.jpg" alt="Thumb1"/>
        <div>
          <h2>Serenity</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/2.jpg" data-img="images/2.jpg" alt="Thumb2"/>
        <div>
          <h2>Silence</h2>
          <p>Separated they live in Bookmarksgrove right at the coast of the Semantics.</p>
        </div>
      </li>
      <li><img src="images/3.jpg" data-img="images/3.jpg" alt="Thumb3"/>
        <div>
          <h2>Abstraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/4.jpg" data-img="images/4.jpg" alt="Thumb4"/>
        <div>
          <h2>Attraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/5.jpg" data-img="images/5.jpg" alt="Thumb5"/>
        <div>
          <h2>Growth</h2>
          <p>A small river named Duden flows by their place and supplies it with the necessary regelialia.</p>
        </div>
      </li>
      <li><img src="images/6.jpg" data-img="images/6.jpg" alt="Thumb6"/>
        <div>
          <h2>Virtue</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/7.jpg" data-img="images/7.jpg" alt="Thumb7"/>
        <div>
          <h2>Beauty</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/8.jpg" data-img="images/8.jpg" alt="Thumb8"/>
        <div>
          <h2>Happiness</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/9.jpg" data-img="images/9.jpg" alt="Thumb9"/>
        <div>
          <h2>Greatness</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/10.jpg" data-img="images/10.jpg" alt="Thumb10"/>
        <div>
          <h2>Abstraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/11.jpg" data-img="images/11.jpg" alt="Thumb11"/>
        <div>
          <h2>Attraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/12.jpg" data-img="images/12.jpg" alt="Thumb11"/>
        <div>
          <h2>Attraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/13.jpg" data-img="images/13.jpg" alt="Thumb11"/>
        <div>
          <h2>Attraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/14.jpg" data-img="images/14.jpg" alt="Thumb11"/>
        <div>
          <h2>Attraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/16.jpg" data-img="images/16.jpg" alt="Thumb11"/>
        <div>
          <h2>Attraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/1.jpg" data-img="images/1.jpg" alt="Thumb12"/>
        <div>
          <h2>Virtue</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/13.jpg" data-img="images/13.jpg" alt="Thumb13"/>
        <div>
          <h2>Happiness</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/14.jpg" data-img="images/14.jpg" alt="Thumb14"/>
        <div>
          <h2>Serenity</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/2.jpg" data-img="images/2.jpg" alt="Thumb1"/>
        <div>
          <h2>Virtue</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/4.jpg" data-img="images/4.jpg" alt="Thumb2"/>
        <div>
          <h2>Serenity</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
      <li><img src="images/6.jpg" data-img="images/6.jpg" alt="Thumb3"/>
        <div>
          <h2>Attraction</h2>
          <p>Far far away, behind the word mountains there live the blind texts.</p>
        </div>
      </li>
    </ul>
  </div>
  <div id="iw_ribbon" class="iw_ribbon"> <span class="iw_close"></span> <span class="iw_zoom">Click thumb to zoom</span> </div>
</div>
<script src="js/jquery-1.7.2.min.js" type="text/javascript"></script>
<script type="text/javascript" src="js/jquery.masonry.min.js"></script>
<script type="text/javascript" src="js/jquery.easing.1.3.js"></script>
<script type="text/javascript">
			$(window).load(function(){
				var $iw_thumbs			= $('#iw_thumbs'),
					$iw_ribbon			= $('#iw_ribbon'),
					$iw_ribbon_close	= $iw_ribbon.children('span.iw_close'),
					$iw_ribbon_zoom		= $iw_ribbon.children('span.iw_zoom');
					
					ImageWall	= (function() {
							// window width and height
						var w_dim,
						    // index of current image
							current				= -1,
							isRibbonShown		= false,
							isFullMode			= false,
							// ribbon / images animation settings
							ribbonAnim			= {speed : 500, easing : 'easeOutExpo'},
							imgAnim				= {speed : 400, easing : 'jswing'},
							// init function : call masonry, calculate window dimentions, initialize some events
							init				= function() {
								$iw_thumbs.imagesLoaded(function(){
									$iw_thumbs.masonry({
										isAnimated	: true
									});
								});
								getWindowsDim();
								initEventsHandler();
							},
							// calculate window dimentions
							getWindowsDim		= function() {
								w_dim = {
									width	: $(window).width(),
									height	: $(window).height()
								};
							},
							// initialize some events
							initEventsHandler	= function() {
								
								// click on a image
								$iw_thumbs.delegate('li', 'click', function() {
									if($iw_ribbon.is(':animated')) return false;
									
									var $el = $(this);
									
									if($el.data('ribbon')) {
										showFullImage($el);
									}
									else if(!isRibbonShown) {
										isRibbonShown = true;
										
										$el.data('ribbon',true);
										
										// set the current
										current = $el.index();
									
										showRibbon($el);
									}
								});
								
								// click ribbon close
								$iw_ribbon_close.bind('click', closeRibbon);
								
								// on window resize we need to recalculate the window dimentions
								$(window).bind('resize', function() {
											getWindowsDim();
											if($iw_ribbon.is(':animated'))
												return false;
											closeRibbon();
										 })
								         .bind('scroll', function() {
											if($iw_ribbon.is(':animated'))
												return false;
											closeRibbon();
										 });
								
							},
							showRibbon			= function($el) {
								var	$img	= $el.children('img'),
									$descrp	= $img.next();
								
								// fadeOut all the other images
								$iw_thumbs.children('li').not($el).animate({opacity : 0.2}, imgAnim.speed);
								
								// increase the image z-index, and set the height to 100px (default height)
								$img.css('z-index', 100)
									.data('originalHeight',$img.height())
									.stop()
									.animate({
										height 		: '100px'
									}, imgAnim.speed, imgAnim.easing);
								
								// the ribbon will animate from the left or right
								// depending on the position of the image
								var ribbonCssParam 		= {
										top	: $el.offset().top - $(window).scrollTop() - 6 + 'px'
									},
									descriptionCssParam,
									dir;
								
								if( $el.offset().left < (w_dim.width / 2) ) {
									dir = 'left';
									ribbonCssParam.left 	= 0;
									ribbonCssParam.right 	= 'auto';
								}
								else {
									dir = 'right';
									ribbonCssParam.right 	= 0;
									ribbonCssParam.left 	= 'auto';
								}
								
								$iw_ribbon.css(ribbonCssParam)
								          .show()
										  .stop()
										  .animate({width : '100%'}, ribbonAnim.speed, ribbonAnim.easing, function() {
												switch(dir) {
													case 'left' :
														descriptionCssParam		= {
															'left' 			: $img.outerWidth(true) + 'px',
															'text-align' 	: 'left'
														};
														break;
													case 'right' :	
														descriptionCssParam		= {
															'left' 			: '-200px',
															'text-align' 	: 'right'
														};
														break;
												};
												$descrp.css(descriptionCssParam).fadeIn();
												// show close button and zoom
												$iw_ribbon_close.show();
												$iw_ribbon_zoom.show();
										  });
								
							},
							// close the ribbon
							// when in full mode slides in the middle of the page
							// when not slides left
							closeRibbon			= function() {
								isRibbonShown 	= false
								
								$iw_ribbon_close.hide();
								$iw_ribbon_zoom.hide();
								
								if(!isFullMode) {
								
									// current wall image
									var $el	 		= $iw_thumbs.children('li').eq(current);
									
									resetWall($el);
									
									// slide out ribbon
									$iw_ribbon.stop()
											  .animate({width : '0%'}, ribbonAnim.speed, ribbonAnim.easing); 
										  
								}
								else {
									$iw_ribbon.stop().animate({
										opacity		: 0.8,
										height 		: '0px',
										marginTop	: w_dim.height/2 + 'px' // half of window height
									}, ribbonAnim.speed, function() {
										$iw_ribbon.css({
											'width'		: '0%',
											'height'	: '126px',
											'margin-top': '0px'
										}).children('img').remove();
									});
									
									isFullMode	= false;
								}
							},
							resetWall			= function($el) {
								var $img		= $el.children('img'),
									$descrp		= $img.next();
									
								$el.data('ribbon',false);
								
								// reset the image z-index and height
								$img.css('z-index',1).stop().animate({
									height 		: $img.data('originalHeight')
								}, imgAnim.speed,imgAnim.easing);
								
								// fadeOut the description
								$descrp.fadeOut();

								// fadeIn all the other images
								$iw_thumbs.children('li').not($el).animate({opacity : 1}, imgAnim.speed);								
							},
							showFullImage		= function($el) {
								isFullMode	= true;
								
								$iw_ribbon_close.hide();
								
								var	$img	= $el.children('img'),
									large	= $img.data('img'),
								
									// add a loading image on top of the image
									$loading = $('<span class="iw_loading"></span>');
								
								$el.append($loading);
								
								// preload large image
								$('<img/>').load(function() {
									var $largeImage	= $(this);
									
									$loading.remove();
									
									$iw_ribbon_zoom.hide();
									
									resizeImage($largeImage);
									
									// reset the current image in the wall
									resetWall($el);
									
									// animate ribbon in and out
									$iw_ribbon.stop().animate({
										opacity		: 1,
										height 		: '0px',
										marginTop	: '63px' // half of ribbons height
									}, ribbonAnim.speed, function() {
										// add the large image to the DOM
										$iw_ribbon.prepend($largeImage);
										
										$iw_ribbon_close.show();
										
										$iw_ribbon.animate({
											height 		: '100%',
											marginTop	: '0px',
											top			: '0px'
										}, ribbonAnim.speed);
									});
								}).attr('src',large);
									
							},
							resizeImage			= function($image) {
								var widthMargin		= 100,
									heightMargin 	= 100,
								
									windowH      	= w_dim.height - heightMargin,
									windowW      	= w_dim.width - widthMargin,
									theImage     	= new Image();
									
								theImage.src     	= $image.attr("src");
								
								var imgwidth     	= theImage.width,
									imgheight    	= theImage.height;

								if((imgwidth > windowW) || (imgheight > windowH)) {
									if(imgwidth > imgheight) {
										var newwidth 	= windowW,
											ratio 		= imgwidth / windowW,
											newheight 	= imgheight / ratio;
											
										theImage.height = newheight;
										theImage.width	= newwidth;
										
										if(newheight > windowH) {
											var newnewheight 	= windowH,
												newratio 		= newheight/windowH,
												newnewwidth 	= newwidth/newratio;
										
											theImage.width 		= newnewwidth;
											theImage.height		= newnewheight;
										}
									}
									else {
										var newheight 	= windowH,
											ratio 		= imgheight / windowH,
											newwidth 	= imgwidth / ratio;
										
										theImage.height = newheight;
										theImage.width	= newwidth;
										
										if(newwidth > windowW) {
											var newnewwidth 	= windowW,
											    newratio 		= newwidth/windowW,
												newnewheight 	= newheight/newratio;
									
											theImage.height 	= newnewheight;
											theImage.width		= newnewwidth;
										}
									}
								}
									
								$image.css({
									'width'			: theImage.width + 'px',
									'height'		: theImage.height + 'px',
									'margin-left'	: -theImage.width / 2 + 'px',
									'margin-top'	: -theImage.height / 2 + 'px'
								});							
							};
							
						return {init : init};	
					})();
				
				ImageWall.init();
			});
		</script>
</body>
</html>

全部代码:jquerycss3实现瀑布流照片墙特效

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/783841.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

一文彻底带你搞懂什么是适配器模式!!

一文彻底带你搞懂什么是适配器模式&#xff01;&#xff01; 什么是适配器模式&#xff1f;适配器的两种实现方式适用情况代码示例背景类适配器对象适配器 IO流中的实际应用应用扩展 总结 什么是适配器模式&#xff1f; 适配器模式&#xff08;Adapter Pattern&#xff09;是作…

喂饭级AI语音生成神器Plus版来了!(懒人包)

之前有接触过数字人的朋友&#xff0c;都知道合成语音是制作数字人的关键一步。有不少AI工具可以合成语音&#xff0c;但要不就是收费的&#xff0c;要不就是在网页端使用&#xff0c;有隐私泄露风险。 之前给大家分享过一款网易有道开源的一款AI语音合成工具EmotiVoice&#…

全志A527 T527 设置左右分屏修改为单屏幕,应用分屏改为单屏

1.前言 android13中,A527的系统设置变成,左边是一级菜单,右侧是二级菜单, 这样跟我们以前android7/8/9的布局是不一样的,我们需要将它修改为一级菜单,点进去才是二级菜单这种。 效果如下 2.系统设置实现分析 它这里使用的是google新出的embedding activity, 相关的知…

林业气象站怎么选出专业设备?

随着全球气候变化的加剧&#xff0c;林业资源的保护与管理显得尤为重要。在选择林业气象站之前&#xff0c;首先要明确自身的需求。林业气象站的主要功能包括监测温度、湿度、风速、风向、降雨量等气象要素&#xff0c;但不同地区的林业生态环境存在差异&#xff0c;因此需要根…

vue-cli 脚手架详细介绍

4 vue-cli 脚手架 1 脚手架介绍 vue-cli也叫vue脚手架,vue-cli是vue官方提供的一个全局命令工具&#xff0c;这个命令可以帮助我们快速的创建一个vue项目的基础架子。 脚手架&#xff1a;搭建好的一个架子&#xff0c;我们在架子上进行开发 开箱即用零配置基于webpack、webpac…

为什么要学习Go

本文旨在探讨为什么Go语言值得学习,以及它如何能够提升您的编程技能和职业发展。我们将深入分析Go语言的核心优势,包括其简洁的语法、强大的并发支持、卓越的性能表现,以及在云计算、微服务和系统编程等领域的广泛应用 GO logo的核心理念&#xff0c;即简单胜于复杂。使用现代…

第10章:网络与信息安全

目录 第10章&#xff1a;网络与信息安全 网络概述 计算机网络概念 计算机网络的分类 网络的拓扑结构 ISO/OSI网络体系结构 网络互联硬件 物理层互联设备 数据链路层互联设备 网络层互联设备 应用层互联设备 网络的协议与标准 网络标准 TCP/IP协议族 网络接口层协…

git恢复到之前提交的记录

项目搞崩了&#xff0c;还提交上去了怎么办&#xff1f; 那当然是恢复到之前的提交记录了&#xff0c;那怎么操作呢&#xff1f; 首先&#xff0c;到代码托管平台找到你想恢复的提交记录(在此以github为例) 获取 commit id 首先&#xff0c;通过如下图操作获取到commit id {% a…

代发考生战报:南京考场华为售前HCSP H19-411考试通过

代发考生战报&#xff1a;南京考场华为售前HCSP H19-411考试通过&#xff0c;客服给的题库非常稳定&#xff0c;考试遇到2个新题&#xff0c;剩下全是题库里的原题&#xff0c;想考的放心考吧&#xff0c;考场服务挺好&#xff0c;管理员带着做签名和一些考试说明介绍清楚&…

简单介绍 Dagger2 的入门使用

依赖注入 在介绍 Dagger2 这个之前&#xff0c;必须先解释一下什么是依赖注入&#xff0c;因为这个库就是用来做依赖注入的。所以这里先简单用一句话来介绍一下依赖注入&#xff1a; 依赖注入是一种设计模式&#xff0c;它允许对象在运行时注入其依赖项。而不是在编译时确定&a…

我们所熟知的meme梗图也可以用AI生成了,老外都玩坏了。

meme梗图不知道大家看到过嘛&#xff1f;相信你们看见下面的图你就会大叫“卧槽”&#xff0c;原来是这种图&#xff0c;我以前经常狂刷不止&#xff0c;太有趣了。 其实meme是一个网络流行语&#xff0c;可译为模因。在大众非学术范围内也可翻译为我们所熟知的“梗”。其中“表…

Function Call ReACT,Agent应用落地的加速器_qwen的function calling和react有什么不同

探索智能体Agent的未来之路&#xff1a;Function Call与ReACT框架的较量&#xff0c;谁能引领未来&#xff1f; 引言 各大平台出现智能体应用创建&#xff0c;智能体逐渐落地&#xff0c;背后的使用哪种框架&#xff1f; 随着各大平台&#xff0c;例如百度千帆APPbuilder、阿…

分类下两列一组统计

表格 A 列是分类&#xff0c;后面是 2N 个 key-value 列 ABCDEFG1CountryLabel1Count1Label2Count2Label3Count32USA10B9C83USD9C8A74USC8D7B65USA7C6B56CAA10B9C87CAD9C8A78CAC8D7B69INA10C9B810IND9A8B711INA8D7B6 需要对分类、key 分组&#xff0c;对 value 求和&#xff…

一文揭秘:中小企业选择做软文营销推广的优势有哪些?

在当今这个信息泛滥、注意力稀缺的时代&#xff0c;中小企业作为经济活力的重要组成部分&#xff0c;面临着前所未有的机遇与挑战。而相比于硬广告的直接灌输&#xff0c;软文营销推广以其独特的魅力&#xff0c;成为了中小企业提升品牌形象、吸引目标客户的重要手段。今天投媒…

tqdm进度条函数使用 python

1.作用&#xff1a; 通过使用 tqdm &#xff0c;可以让您在处理大量数据或长时间运行的循环时&#xff0c;更好地了解程序的执行进度&#xff0c;增强用户体验。 2.使用 ---可以使用 pip install tqdm 进行安装。 ---tqdm.tqdm(iterator可迭代对象&#xff0c;desc描述符&…

Linux下QT程序启动失败问题排查方法

文章目录 0.问题背景1.程序启动失败常见原因2.排查依赖库问题2.1 依赖库缺失2.2 依赖库加载路径错误2.3 依赖库版本不匹配2.4 QT插件库缺失2.4.1 QT插件库缺失2.4.2 插件库自身的依赖库缺失 2.5 系统基础C库不匹配 3.资源问题3.1 缺少翻译文件3.2 缺少依赖的资源文件3.3 缺少依…

视频融合共享平台LntonCVS视频监控汇聚平台工业视频监控系统

LntonCVS是一款功能强大、灵活部署的安防视频监控平台&#xff0c;具备广泛的扩展性和视频能力。它支持多种主流标准协议&#xff0c;如国标GB28181、RTSP/Onvif、RTMP&#xff0c;同时还能兼容厂家的私有协议和SDK&#xff0c;如海康Ehome、海大宇等。除了传统的安防监控功能外…

基于51单片机的四路抢答器Protues仿真设计

一、设计背景 近年来随着科技的飞速发展&#xff0c;单片机的应用正在不断的走向深入。本文阐述了基于51单片机的八路抢答器设计。本设计中&#xff0c;51单片机充当了核心控制器的角色&#xff0c;通过IO口与各个功能模块相连接。按键模块负责检测参与者的抢答动作&#xff0c…

ExcelVBA运用Excel的【条件格式】(二)

ExcelVBA运用Excel的【条件格式】&#xff08;二&#xff09; 前面知识点回顾 1. 访问 FormatConditions 集合 Range.FormatConditions 2. 添加条件格式 FormatConditions.Add 方法 语法 表达式。添加 (类型、 运算符、 Expression1、 Expression2) 3. 修改或删除条件…

【数据结构】线性表----栈详解

栈 栈&#xff08;Stack&#xff09;是一种常见的数据结构&#xff0c;它具有**后进先出&#xff08;Last In, First Out, LIFO&#xff09;**的特点。栈的运作类似于物理世界中的叠盘子&#xff1a;最新放上去的盘子最先被拿走&#xff0c;而最底部的盘子最后才能被取出。 如…