多图片展示弹窗插件

在这里插入图片描述

<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title>图片预览完善</title><style>/*** Created by WangCheng on 2020/9/24.*//*背景框*/.mask-layer * {padding: 0;margin: 0;box-sizing: border-box;}.mask-layer {position: fixed;width: 100%;height: 100%;top: 0;left: 0;z-index: 202020;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;}.mask-layer .mask-layer-close {position: absolute;top: 20px;right: 20px;width: 32px;height: 32px;background: url(img/closeicon.png) no-repeat center center;background-size: cover;cursor: pointer;}.mask-layer-black {width: 100%;height: 100%;background: #000;opacity: .75;position: absolute;top: 0;left: 0;}.mask-layer-container {width: 100%;height: 100%;position: relative;}.mask-layer-container .small-content {width: 630px;height: 100px;position: absolute;left: 50%;transform: translate(-50%);transform: translate(-50%);-webkit-transform: translate(-50%);-moz-transform: translate(-50%);-ms-transform: translate(-50%);-o-transform: translate(-50%);bottom: 0;overflow: hidden;}.small-content .small-img-box {position: relative;top: 0;height: 100%;background: rgba(0, 0, 0, 0.7);display: flex;}.small-img-box .mask-small-img {width: 100px;height: 100px;border: 2px solid transparent;margin: 0 5px 0 0;opacity: 0.4;cursor: pointer;}.small-img-box .mask-small-img.onthis {border: 2px solid #1e9fff;opacity: 1;}.small-content .box-go-left {position: absolute;width: 20px;display: block;text-align: center;left: 0px;bottom: 0;height: 100px;background: url(./img/left_img.png) no-repeat center;background-size: 20px;background-color: rgba(0, 0, 0, 0.3);cursor: pointer;}.small-content .box-go-right {position: absolute;width: 20px;display: block;text-align: center;right: 0px;bottom: 0;height: 100px;background: url(./img/right_img.png) no-repeat center;background-size: 20px;background-color: rgba(0, 0, 0, 0.3);cursor: pointer;}.small-content .box-go-left:hover,.small-content .box-go-right:hover {cursor: pointer;background-color: rgba(0, 0, 0, 0.8);background-size: 24px;}.mask-layer-container .img-pre {width: 100px;height: 100px;border-radius: 100%;position: absolute;left: 20px;top: 50%;transform: translate(0, -50%);-webkit-transform: translate(0, -50%);-moz-transform: translate(0, -50%);-ms-transform: translate(0, -50%);-o-transform: translate(0, -50%);background: url(img/prev.png) no-repeat center center;cursor: pointer;}.mask-layer-container .img-pre:hover {background: url(img/prev_h.png) no-repeat center center;background-color: rgba(0, 0, 0, 0.3);}.mask-layer-container .img-next {width: 100px;height: 100px;position: absolute;border-radius: 100%;cursor: pointer;background: url(img/next.png) no-repeat center center;right: 20px;top: 50%;transform: translate(0, -50%);-webkit-transform: translate(0, -50%);-moz-transform: translate(0, -50%);-ms-transform: translate(0, -50%);-o-transform: translate(0, -50%);}.mask-layer-container .img-next:hover {background: url(img/next_h.png) no-repeat center center;background-color: rgba(0, 0, 0, 0.3);}.mask-layer-container .mask-layer-imgbox {width: 100%;height: 100%;overflow: hidden;position: relative;}.mask-layer-container .mask-layer-imgbox.has-small {height: calc(100% - 105px);}.mask-layer-imgbox .mask-layer-imgName {z-index: 999;position: absolute;bottom: -30px;left: 50%;transform: translate(-50%);-webkit-transform: translate(-50%);-moz-transform: translate(-50%);-ms-transform: translate(-50%);-o-transform: translate(-50%);height: 30px;width: 630px;padding: 5px;color: #ffffff;background: rgba(0, 0, 0, 0.3);transition: all linear 0.3s;}.mask-layer-imgbox:hover .mask-layer-imgName {bottom: 0px;}.mask-layer-imgbox .layer-img-box {position: relative;width: 100%;height: 100%;}.layer-img-box>p {position: absolute;transform-origin: center;-webkit-transform-origin: center;-moz-transform-origin: center;-ms-transform-origin: center;-o-transform-origin: center;width: 100%;height: 100%;-webkit-margin-before: 0;-webkit-margin-after: 0;cursor: move;left: 0;top: 0;}.mask-layer-imgbox .layer-img-box img {position: absolute;max-width: 100%;max-height: 100%;left: 50%;top: 50%;transform: translate(-50%, -50%) scale(1);-webkit-transform: translate(-50%, -50%) scale(1);-moz-transform: translate(-50%, -50%) scale(1);-ms-transform: translate(-50%, -50%) scale(1);-o-transform: translate(-50%, -50%) scale(1);}.mask-layer-imgbox .layer-img-box img:hover {cursor: move;}.zoomImg-hide-box {display: none !important;}/*右键菜单*/.mask-layer .contextmenu {list-style: none;display: none;position: absolute;width: 180px;background: #FFFFFF;border-radius: 5px;z-index: 99;border: 1px solid #333;}.mask-layer .contextmenu li {transition: ease 0.3s;}.mask-layer .contextmenu li:hover {background: #333333;}.mask-layer .contextmenu li>a {display: block;padding: 10px 10px 10px 35px;color: #000000;text-decoration: none;transition: ease 0.3s;}.mask-layer .contextmenu li>a.clockwise {background: url(img/right_rotate.png) no-repeat left 5px center;background-size: 24px 24px;}.contextmenu li>a.clockwise:hover {background: url(img/right_rotate_h.png) no-repeat left 5px center;background-size: 24px 24px;}.mask-layer .contextmenu li>a.counterClockwise {background: url(img/left_rotate.png) no-repeat left 5px center;background-size: 24px 24px;}.contextmenu li>a.counterClockwise:hover {background: url(img/left_rotate_h.png) no-repeat left 5px center;background-size: 24px 24px;}.mask-layer .contextmenu li>a.downimg {background: url(img/down.png) no-repeat left 5px center;background-size: 24px 24px;}.contextmenu li>a.downimg:hover {background: url(img/down_h.png) no-repeat left 5px center;background-size: 24px 24px;}.mask-layer .contextmenu li:hover>a {color: #FFFFFF;}.mask-layer .contextmenu .menu-parend:hover .menu-child {display: block;}</style><style>.content {width: 640px;padding: 20px;margin: 20px auto;border: 1px solid #DDDDDD;}.content img {width: 100px;height: 100px;}</style>
</head><body><div class="content"><img class="zoomImg" src="http://pic1.win4000.com/wallpaper/1/579ab444114a7.jpg" /><img class="zoomImg" src="http://pic1.win4000.com/wallpaper/2018-09-11/5b97693465fbe.jpg" /><img class="zoomImg" src="http://pic1.win4000.com/wallpaper/5/579995baa6a81.jpg" /><img class="zoomImg" src="http://pic1.win4000.com/wallpaper/2019-11-22/5dd746e0da2d9.jpg" /><img class="zoomImg" src="http://pic1.win4000.com/wallpaper/5/538e765510926.jpg" /><img class="zoomImg" src="http://pic1.win4000.com/mobile/5/55b89434a1f47.jpg" /><img class="zoomImg" src="http://pic1.win4000.com/mobile/5/55b894339b12b.jpg" /><img class="zoomImg" src="http://pic1.win4000.com/wallpaper/1/53900c9da6373.jpg" /><img class="zoomImg" src="https://up.36992.com/22/39/1b/c2/86b968577aad8496c2789f4e5219d467.jpg" /></div><script src="https://www.jq22.com/jquery/jquery-1.10.2.js"></script><script src="preview.js" type="text/javascript" charset="utf-8"></script><script>/*** Created by WangCheng on 2020/9/24.*/function showZoomImg(imgBox, domName) {var len = 0; //预览总图片数默认为零var domImg; //img domvar arrPic = new Array(); //定义一个数组srcvar arrName = new Array(); //定义一个数组namevar num = 0; //当前预览的var numNow = 1; //当前预览序号,最小为1var leftPoint; //向左移动范围var rightPoint; //右移动范围var spin_n = 0; //旋转角度var zoom_n = 1;//缩放 放大showModel(); //判断显示方式function showModel() {$("body").on('click', domName, function () {domImg = $(imgBox).find(domName);len = domImg.length;arrPic = [];arrName = [];for (var i = 0; i < len; i++) {arrPic[i] = domImg.eq(i).attr("src"); //将所有img路径存储到数组中if (domImg.eq(i).attr("data-caption")) {arrName[i] = domImg.eq(i).attr("data-caption");} else {arrName[i] = '图片' + (i + 1);}}var img_index = domImg.index(this); //获取点击的索引值num = img_index;numNow = num + 1;addMaskLater(); //添加弹出dom});}//给body添加弹出层的htmlfunction addMaskLater() {var maskBg ="<div class=\"mask-layer\">" +"<div class=\"mask-layer-black\"></div>" +"<div class=\"mask-layer-container\">" +"<div class=\"mask-layer-imgbox\"></div>" +"<div class=\"mask-layer-close\"></div>" +"<div class=\"img-pre\"></div>" +"<div class=\"img-next\"></div>" +"<ul class=\"contextmenu\" id='contextmenu'>" +"<li>" +"<a class=\"clockwise\">顺时针旋转90°</a>" +"</li>" +"<li>" +"<a class=\"counterClockwise\">逆时针旋转90°</a>" +"</li>" +"</ul>" +"</div>" +"</div>";$("body").append(maskBg);if (len > 1) {showSmall(); //加载缩略图} else {$(".img-pre").css('display', 'none');$(".img-next").css('display', 'none');}showImg(); //图片加载showCtrl(); //插件操作}/*加载图片 及图片操作*/function showImg() {$(".mask-layer-imgbox").empty();var imgCont = '<div class="mask-layer-imgName">' + arrName[num] + '</div>' +'<div class="layer-img-box"><img src="' + arrPic[num] + '" alt=""></div>';$(".mask-layer-imgbox").append(imgCont);imgInit(); //图片操作}/*插件操作*/function showCtrl() {//上一张$(".img-pre").on("click", function () {num--;if (num == -1) {num = len - 1;}showImg();showSmallThis(); //显示当前选中});//下一张$(".img-next").on("click", function () {num++;if (num == len) {num = 0;boxReset();}showImg();showSmallThis(); //显示当前选中});/*关闭*/$(".mask-layer-close").click(function () {$(".mask-layer").remove();});/*缩略图操作方法*/if (arrPic.length > 1) {showSmallThis(); //显示当前选中}/*缩略图当前*/function showSmallThis() { //显示当前选中的小图$('.mask-small-img').removeClass('onthis');$($('.mask-small-img')[num]).addClass('onthis');allowShow();}/*小图点击切换*/$('.mask-small-img').on("click", function () {num = $('.mask-small-img').index(this);showImg();showSmallThis(); //显示当前选中});/*box-go-left 内容向右移动*/$('.box-go-left').on('click', function () {boxGoRight();});$('.box-go-right').on('click', function () {boxGoLeft();});function boxGoLeft(intTime) { //向左移动intTime ? intTime : intTime = 1;if (leftPoint > 0) {$('.small-img-box').animate({left: '-=' + 630 * intTime}, 500);leftPoint = leftPoint - intTime;rightPoint = rightPoint + intTime;}}function boxGoRight() { //向右移动if (rightPoint > 0) {$('.small-img-box').animate({left: '+=630'}, 500);leftPoint++;rightPoint--;}}function allowShow() { //保持选中的图片在容器中能看到/*跟随切换*/var boxLeft = $('.small-content').offset().left; //盒子距离顶部var thisLeft = $('.mask-small-img.onthis').offset().left; //当前选中图片距离顶部var intTime = Math.floor((thisLeft - boxLeft) / 630);if (thisLeft - boxLeft >= 630) {boxGoLeft(intTime);} else if (thisLeft < boxLeft) {boxGoRight();} else {//console.log('不需移动')}}/*复位*/function boxReset() {$('.small-img-box').animate({left: '0'}, 500);leftPoint = Math.ceil(arrPic.length / 5) - 1;rightPoint = 0;}$(".clockwise").click(function () {clockwise(); //顺时针旋转});$(".counterClockwise").click(function () {counterClockwise(); //逆时针旋转})/*顺时针旋转*/function clockwise() {spin_n += 90;$(".mask-layer-imgbox img").css({"transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")","-moz-transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")","-ms-transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")","-o-transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")","-webkit-transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")"});};/*逆时针旋转*/function counterClockwise() {spin_n -= 90;$(".mask-layer-imgbox img").css({"transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")","-moz-transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")","-ms-transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")","-o-transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")","-webkit-transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")"});}rightMenu('.mask-layer-container');function rightMenu(dom) {// 鼠标右键事件$(dom).contextmenu(function (e) {// 获取窗口尺寸var winWidth = $(document).width();var winHeight = $(document).height();// 鼠标点击位置坐标var mouseX = e.clientX;var mouseY = e.clientY;// ul标签的宽高var menuWidth = $(".mask-layer .contextmenu").width();var menuHeight = $(".mask-layer.contextmenu").height();// 最小边缘margin(具体窗口边缘最小的距离)var minEdgeMargin = 10;// 以下判断用于检测ul标签出现的地方是否超出窗口范围// 第一种情况:右下角超出窗口if (mouseX + menuWidth + minEdgeMargin >= winWidth &&mouseY + menuHeight + minEdgeMargin >= winHeight) {menuLeft = mouseX - menuWidth - minEdgeMargin + "px";menuTop = mouseY - menuHeight - minEdgeMargin + "px";}// 第二种情况:右边超出窗口else if (mouseX + menuWidth + minEdgeMargin >= winWidth) {menuLeft = mouseX - menuWidth - minEdgeMargin + "px";menuTop = mouseY + minEdgeMargin + "px";}// 第三种情况:下边超出窗口else if (mouseY + menuHeight + minEdgeMargin >= winHeight) {menuLeft = mouseX + minEdgeMargin + "px";menuTop = mouseY - menuHeight - minEdgeMargin + "px";}// 其他情况:未超出窗口else {menuLeft = mouseX + minEdgeMargin + "px";menuTop = mouseY + minEdgeMargin + "px";};// ul菜单出现$(".mask-layer .contextmenu").css({"left": menuLeft,"top": menuTop}).show();// 阻止浏览器默认的右键菜单事件return false;});// 点击之后,右键菜单隐藏$(document).click(function () {$(".contextmenu").hide();});}}/*图片操作方法*/function imgInit() {zoom_n = 1;//重置缩放比例/*图片拖拽*/var $div_img = $(".layer-img-box img");//绑定鼠标左键按住事件$div_img.bind("mousedown", function (event) {event.preventDefault && event.preventDefault(); //去掉图片拖动响应//获取需要拖动节点的坐标var offset_x = $(this)[0].offsetLeft; //x坐标var offset_y = $(this)[0].offsetTop; //y坐标//获取当前鼠标的坐标var mouse_x = event.pageX;var mouse_y = event.pageY;//绑定拖动事件//由于拖动时,可能鼠标会移出元素,所以应该使用全局(document)元素$(".layer-img-box").bind("mousemove", function (ev) {// 计算鼠标移动了的位置var _x = ev.pageX - mouse_x;var _y = ev.pageY - mouse_y;//设置移动后的元素坐标var now_x = (offset_x + _x) + "px";var now_y = (offset_y + _y) + "px";//改变目标元素的位置$div_img.css({top: now_y,left: now_x});});//当鼠标左键松开,接触事件绑定$(".layer-img-box").bind("mouseup", function () {$(".layer-img-box").unbind("mousemove");});});//绑定鼠标滚轮缩放图片$div_img.bind("mousewheel DOMMouseScroll", function (e) {e = e || window.event;var delta = e.originalEvent.wheelDelta || e.originalEvent.detail;var dir = delta > 0 ? 'down' : 'up';zoomImg(this, dir);return false;});//鼠标滚轮缩放图片function zoomImg(o, delta) {if (delta == 'up') {zoom_n -= 0.2;zoom_n = zoom_n <= 0.2 ? 0.2 : zoom_n;} else {zoom_n += 0.2;}$(".mask-layer-imgbox img").css({"transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")","-moz-transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")","-ms-transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")","-o-transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")","-webkit-transform": "translate(-50%, -50%) rotate(" + spin_n + "deg) scale(" + zoom_n + ")"});}}/*缩略图显示*/function showSmall() {leftPoint = Math.ceil(arrPic.length / 6) - 1;rightPoint = 0;$(".mask-layer-imgbox").addClass('has-small');var sDom = "<div class='small-content'><div class='small-img-box'></div></div>"$(".mask-layer-container").append(sDom);/*添加缩略图显示*/for (var i = 0; i < arrPic.length; i++) {$('.small-img-box').append('<img class="mask-small-img" src=' + arrPic[i] + '>');}if (arrPic.length > 6) { //大于六张出现左右移动按钮$(".small-img-box").width(Math.ceil(arrPic.length / 6) * 630);$('.small-content').append('<span class="box-go-left"></span><span class="box-go-right"></span>');}}}</script><script type="text/javascript">// 展示".content"中的所有'.zoomImg'图片showZoomImg(".content", '.zoomImg');</script>
</body></html>

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

肖sir__mysql之三表__008

mysql之三表 create table student( stu_no int, stu_name varchar(10), sex char(1), age int(3), edit varchar(20) ) DEFAULT charsetutf8; insert into student values (1,‘wang’,‘男’,21,‘hello’), (2,‘小明’,‘女’,22,‘haha2’), (3,‘hu’,‘女’,23,‘haha3…

Fast-DDS 服务发现简要概述

阅读本文章需要对DDS基础概念有一些了解&#xff0c;一些内容来自Fast-DDS官方文档&#xff0c;一些是工作中踩过的坑。 1. 服务发现阶段 满足OMG标准的DDS服务发现分为两部分&#xff0c;分别是: PDP(Participant Discovery Protocol 参与者发现协议)&#xff1a;参与者确认…

豆瓣图书评分数据的可视化分析

导语 豆瓣是一个提供图书、电影、音乐等文化产品的社区平台&#xff0c;用户可以在上面发表自己的评价和评论&#xff0c;形成一个丰富的文化数据库。本文将介绍如何使用爬虫技术获取豆瓣图书的评分数据&#xff0c;并进行可视化分析&#xff0c;探索不同类型、不同年代、不同…

第13节-PhotoShop基础课程-裁剪工具

文章目录 前言1.裁剪工具1.基本操作 Alt Shift2.拉直3.内容识别 自动填充 2.透视裁剪工具3.切片工具-长图分成多个4.切片选择工具5. 存储为一张一张 前言 1.裁剪工具 1.基本操作 Alt Shift 2.拉直 可以矫正图片 3.内容识别 自动填充 2.透视裁剪工具 可以拉正图片 3.切片工具-…

Spring系列文章:Spring中的设计模式

一、简单⼯⼚模式 BeanFactory的getBean()⽅法&#xff0c;通过唯⼀标识来获取Bean对象。是典型的简单⼯⼚模式&#xff08;静态⼯⼚模 式&#xff09;&#xff1b; 二、⼯⼚⽅法模式 FactoryBean是典型的⼯⼚⽅法模式。在配置⽂件中通过factory-method属性来指定⼯⼚⽅法&a…

Python中进行特征重要性分析的9个常用方法

特征重要性分析用于了解每个特征(变量或输入)对于做出预测的有用性或价值。目标是确定对模型输出影响最大的最重要的特征&#xff0c;它是机器学习中经常使用的一种方法。 为什么特征重要性分析很重要? 如果有一个包含数十个甚至数百个特征的数据集&#xff0c;每个特征都可能…

发现某设备 adb shell ps 没有输出完整信息

某错误示例 并不是都使用 -ef 参数查找都能够返回完整信息&#xff0c;某些版本设备不适用 -ef 也不会返回完整信息。 简单兼容 简单兼容不同版本 Android 设备查找进程列表&#xff0c;没有通过脚本判断 Android 版本&#xff0c;如有兴趣可以自己修改。 :loop adb shell…

在测试过程中引入可观测性平台提升业务质量

作者 观测云 产品技术专家 成都办公室 - 刘跃兰 前言 随着微服务技术的发展&#xff0c;微服务概念已深入人心&#xff0c;越来越多的企业开始使用微服务架构来开发业务应用。业务应用系统的整体架构变得更加复杂&#xff0c;并存在各种各样的不确定性因素&#xff0c;从而对…

小节8:Python之文件操作

1、文件在哪里&#xff1f; 如果用代码对文件进行操作&#xff0c;需要先找到那个文件 MacOS/Linux&#xff1a;斜杠/ 表示根目录&#xff0c;一切的文件、目录都存放在根目录下面。 Windows系统&#xff1a;就不一样了&#xff0c;它每一个磁盘分区都有自己的根目录&#x…

01-Redis核心数据结构与高性能原理

上一篇&#xff1a; 1.Redis安装 下载地址&#xff1a;http://redis.io/download 安装步骤&#xff1a; # 安装gcc yum install gcc# 把下载好的redis-5.0.3.tar.gz放在/usr/local文件夹下&#xff0c;并解压 wget http://download.redis.io/releases/redis-5.0.3.tar.gz…

[C++入门]---List的使用及模拟实现

文章目录 1.list的介绍2.list的使用2.1list的构造函数2.2list modifiers2.3list capacity2.4list elment access2.5iterator的使用 3.list的模拟实现3.1list的源码 1.list的介绍 list是可以在常数范围内在任意位置进行插入和删除的序列式容器&#xff0c;并且该容器可以前后双向…

【数据结构】堆排序详解

文章目录 一、堆排序思想二、向上调整建堆排序三、向下调整建堆排序四、总结 对于什么是堆&#xff0c;堆的概念分类以及堆的向上和向下两种调整算法可见&#xff1a; 堆的创建 一、堆排序思想 int a[] { 2,3,5,7,4,6 };对于这样一个数组来说&#xff0c;要想要用堆排序对它…

java.lang.ClassCastException: android.os.BinderProxy cannot be cast to ...

项目开发遇到下面这个报错了&#xff01; 问题原因 直接说原因&#xff0c;就是因为进程间不能直接传递对象&#xff0c;应该传递该Binder对象的映射&#xff08;代理对象&#xff09;&#xff0c;所以类型转换就出错了。如果在同一个进程中&#xff0c;直接传递对象没有关系&a…

9月15日作业

Qt代码 #include "mywnd.h"//构造函数的定义 mywnd::mywnd(QWidget *parent): QWidget(parent) //显性调用父类的有参构造完成对子类从父类继承下来成员的初始化工作 {//窗口设置this->resize(QSize(500, 433));this->setWindowTitle("Widget&quo…

安装GPU驱动,CUDA Toolkit和配置与CUDA对应的Pytorch

如果有帮助,记得回来点个赞 目录 1.安装指定GPU驱动如果安装的GPU CUDA Version和CUDA Toolkit版本已经冲突怎么办? 2.安装指定版本的CUDA Toolkit如果我安装了CUDA Toolkit之后nvcc -V仍然显示旧的CUDA Toolkit版本怎么办? 3.安装与CUDA对应的Pytorch已经安装了错乱版本的c…

《C++ primer plus》精炼(OOP部分)——对象和类(4)

“学习是人类进步的阶梯&#xff0c;也是个人成功的基石。” - 罗伯特肯尼迪 文章目录 友元函数利用友元函数重载<<运算符重载部分示例&#xff1a;矢量类 友元函数 先看看在上一章中我们作为例子的代码&#xff1a; class Student{string name;int grade;int operator…

第十九章、【Linux】开机流程、模块管理与Loader

19.1.1 开机流程一览 以个人计算机架设的 Linux 主机为例&#xff0c;当你按下电源按键后计算机硬件会主动的读取 BIOS 或 UEFI BIOS 来载入硬件信息及进行硬件系统的自我测试&#xff0c; 之后系统会主动的去读取第一个可开机的设备 &#xff08;由 BIOS 设置的&#xff09; …

如何实现wingftpserver部署到外网访问?快解析p2p内网穿透

不少朋友选择用wing FTP来搭建部署FTP服务管理文件共享。Wing FTP Server是一个跨平台ftp服务器端&#xff0c;它有不错的可靠性和一个友好的配置界面&#xff0c;Wing FTP Server除了能提供FTP的基本服务功能以外&#xff0c;还能提供管理员终端、任务计划、基于Web的管理端和…

中国智能客服发展历程

中国智能客服的发展历程&#xff1a; 在2000年以前&#xff0c;互联网尚未普及&#xff0c;客服主要以电话沟通为主。从2000年到2010年&#xff0c;得益于计算机技术、计算机电话集成技术&#xff08;CTI&#xff09;、网络技术、多媒体机技术以及CRM、BI、ERP、OA等企业信息化…

基于SSM+Vue的校园教务系统的设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用Vue技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…