(vue)新闻列表与图片对应显示,体现选中、移入状态

(vue)新闻列表与图片对应显示,体现选中、移入状态


项目背景:郑州院XX项目首页-新闻展示模块,鼠标移入显示对应图片,且体现选中和移入状态


首次加载:
在这里插入图片描述

切换列表后:

在这里插入图片描述


html:

<el-row :gutter="20" class="process-content">
  <el-col :span="10">
    <div class="block"> 
      //图片
      <el-image :src="picUrl" class="newImage" :fit="fit">
        <div slot="placeholder" class="image-slot">
          加载中<span class="dot">...</span>
        </div>
      </el-image>
    </div>
  </el-col>
  <el-col :span="14">
    <div class="newsBody">
      <div
        v-for="(item, index) of newsList.slice(0, 4)"//截取收据前4个
        :key="index"
        class="news-list"
        :class="{'active' : change === index}" //选中样式
        tabindex="1" //选中
        @mouseenter="handleMouseEnter(item)" //移入
        @mouseleave="handleMouseLeave(item)" //移出
        @click="newClick(item,index)" //点击
      >
        <span class="newsTitle">{{ item.title }}</span>
        <div class="newsDesc">{{ item.keywords }}</div>
      </div>
    </div>
  </el-col>
</el-row>

js:

data() {
    return {      
      newsList: [
        {
          picUrl:'https://fuss...10.jpeg',
          title: '...技术',
          keywords: '通过改变...'
        },
        {
          picUrl:null,
          title: '加热...',
          keywords: '...'
        },
        ...
      ],
      picUrl: null,
      change: 0, //初始选中第一条新闻
      fits: 'fill' // 'fill', 'contain', 'cover', 'none', 'scale-down'
   }
},

methods:{
	// 获取新闻
    getNews() {
      newsSelect().then((res) => { 
          this.newsList = res.data.list;
          this.picUrl = this.newsList[0].picUrl; //初始显示第一条新闻的图片
      });
    },
    // 移入
    handleMouseEnter(item, index) {
      //若返回图片地址为空则给默认图片
      if (item.picUrl !== null) {
        this.picUrl = item.picUrl
      } else {
        this.picUrl = require('@/assets/images/dashboard/noData.png') 
      }
    },
    // 移出
    handleMouseLeave() {
      //恢复被选中项的图片
      this.picUrl = this.newsList[this.change].picUrl !== null ? this.newsList[this.change].picUrl : require('@/assets/images/dashboard/noData.png')
    },
    // 点击
    newClick(item, index) {
      this.change = index //选中的项
    }

}

css:

.process-content {
  height: 480px;
  margin-top: 20px;

  .block{
    width: 100%;
    height: 400px;
    display: flex;
    justify-content: center;
    align-items: center;
    .newImage{
      height: 400px;
    }
  }
  .newsBody {
    height: 400px;
    .news-list{
      height: 70px;
      border-bottom: 1px solid #d1cfcf;
      padding: 15px 30px;
      transition: all 0.3s;
      overflow: hidden;
      .newsTitle {
        font-size: 20px;
        font-weight: 600;
      }
      .newsDesc {
        color: #666;
        font-size: 14px;
        margin-top: 10px;
      }
    }
    //重点
    .news-list:hover,
    .news-list:focus{
      color: #fff;
      background-color: #065de0;
      .newsDesc {
        color: #fff;
      }
    }
  }
}
//重点
.active{
  color: #fff;
  background-color: #065de0;
  .newsDesc {
    color: #fff !important;
  }
}

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

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

相关文章

glibc内存管理ptmalloc

1、前言 今天想谈谈ptmalloc如何为应用程序分配释放内存的&#xff0c;基于以下几点原因才聊它&#xff1a; C/C 70%的问题是内存问题。了解一点分配器原理对解决应用程序内存问题肯定有帮助。C也在用ptmalloc. 当你在C中new一个对象时&#xff0c;底层还是依赖glibc中的ptma…

jmeter的函数助手使用方法

如某个上传文件接口&#xff0c;一个文件只能同时被一个接口调用&#xff0c;如果被并发同时调用就会报错 创建多个测试文件 比如50并发&#xff0c;创建更多的文件防止并发多时随机数生成重复 生成随机数函数 工具–函数助手-选择random-输入范围&#xff08;1-696&#…

vue3父子通信、跨层通信

子传父 通过 ref标识 获取真实的 dom对象或者组件实例对象 父组件获取子组件内部属性和方法 顶层组件向任意的底层组件传递数据和方法&#xff0c;实现跨层组件通信 非响应式数据父修改不了子的内容 子组件调用父组件方法

若依微服务跑起来-微服务小白入门(1)

背景 若依的基本框架系列&#xff0c;已经构建起来&#xff0c;请参照 小白入门系列 - 鸡毛掸子 这些东西理解&#xff0c;并且实际板砖以后&#xff0c;有必要对现在流行的一些概念做一些升级&#xff0c;现在我们就进入到所谓的cloud版本&#xff0c;其实&#xff0c;前面的…

【C++】多态 (上)

在实际生活中我们也经常见到多态的例子&#xff0c;多态就是不同的对象完成同一个行为时会产生不同的状态&#xff0c;比如成人和儿童购票就是不一样的&#xff0c;多态是可以基于继承的&#xff0c;我们本篇博客的多态就是基于继承的&#xff0c;下面我们先看一个简单例子 cla…

JsonUtility.ToJson 和UnityWebRequest 踩过的坑记录

项目场景&#xff1a; 需求&#xff1a;我在做网络接口链接&#xff0c;使用的unity自带的 UnityWebRequest &#xff0c;数据传输使用的json&#xff0c;json和自定义数据转化使用的也是unity自带的JsonUtility。使用过程中发现两个bug。 1.安全验证失败。 报错为&#xff1a…

.NET Framework 服务实现监控可观测性最佳实践

环境信息 系统环境&#xff1a;Windows Server开发语言&#xff1a;.NET Framework > 4.6.1APM探针包&#xff1a;ddtrace 准备工作 安装 Datakit 主机部署&#xff1a; 主机安装 - 观测云文档 打开采集 APM 采集器 Windows 主机配置 # 到如下路径&#xff0c;把ddtr…

Spring常用设计模式-实战篇之单例模式

实现案例&#xff0c;饿汉式 Double-Check机制 synchronized锁 /*** 以饿汉式为例* 使用Double-Check保证线程安全*/ public class Singleton {// 使用volatile保证多线程同一属性的可见性和指令重排序private static volatile Singleton instance;public static Singleton …

VUE中添加视频播放功能

转载https://www.cnblogs.com/gg-qq/p/10782848.html 常见错误 vue-video-player下载后‘vue-video-player/src/custom-theme.css‘找不到 解决方法 卸载原来的video-play版本 降低原来的版本 方法一 npm install vue-video-player5.0.1 --save 方法二 或者是在pack.json中直…

huggingface的transformers训练gpt

目录 1.原理 2.安装 3.运行 ​编辑 4.数据集 ​编辑 4.代码 4.1 model init​编辑 forward&#xff1a; 总结&#xff1a; 关于loss和因果语言模型&#xff1a; ​编辑 交叉熵&#xff1a;​编辑 记录一下transformers库训练gpt的过程。 transformers/examples/…

使用 Amazon SageMaker 微调 Llama 2 模型

本篇文章主要介绍如何使用 Amazon SageMaker 进行 Llama 2 模型微调的示例。 这个示例主要包括: Llama 2 总体介绍Llama 2 微调介绍Llama 2 环境设置Llama 2 微调训练 前言 随着生成式 AI 的热度逐渐升高&#xff0c;国内外各种基座大语言竞相出炉&#xff0c;在其基础上衍生出…

MIT的研究人员最近开发了一种名为“FeatUp”的新算法,这一突破性技术为计算机视觉领域带来了高分辨率的洞察力

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

vuecli创建vue3项目

第一步&#xff1a; 在文件夹中输入 vue create xxx 第二步&#xff1a; 勾选下面带有*号的&#xff0c;经验最好把Linter/Formatter勾掉&#xff0c;不然会出现eslint报错 第三步&#xff1a; 选择3.x 第四步&#xff1a; 意思为是否用history模式来创建路由&#xff0…

mineadmin前端安装启动

在上一篇文章中&#xff0c; 我们已经搭建好了后端环境并启动 mineadmin 快速安装部署&#xff08;docker环境&#xff09; 一、下载前端项目 1、在搭建后端时候&#xff0c;使用php bin/hyperf.php mine:install 的时候&#xff0c;有一个步骤是安装前端项目的。安装目录为&a…

【有源码】buildroot根文件系统编译和常见问题

前言 编译好的含有QT5等工具包的buildroot根文件 仓库&#xff1a;https://gitee.com/wangyoujie11/atkboard_-linux_-driver 编译过程如下 1.下载源码&#xff0c;解压tar -vxjf xxx.tar.bz2 https://buildroot.org/ 这里以如下版本实验 2.在解压之后的buildroot-2019.02.…

智慧公厕的系统构成与功能解析

智慧公厕系统是通过传感器和云平台相结合的创新技术&#xff0c;旨在提供更好的公厕管理与服务。智慧公厕从系统的构成来看&#xff0c;主要分为感知层&#xff08;数据收集&#xff09;、传输层&#xff08;数据传输&#xff09;、平台层&#xff08;数据处理&#xff09;和应…

【vue-小知识】var、let 和 const之间的区别

文章目录 结论1、重复定义变量名var&#xff1a;允许重复定义变量名let和const&#xff1a;不可以重复定义变量名 2、修改值var&#xff1a;允许修改值let&#xff1a;允许修改值const&#xff1a;不允许修改值&#xff0c;会报错 3、变量提升var : 支持变量提升let和const&…

查看VMWare ESXi 6.5/6.7服务器上 GPU直通的状态

VMWare ESXi 6.5/6.7服务器状态 查看配置参数

Google的MELON: 通过未定位图像重建精确3D模型的突破性算法

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

OFC2023活动剪影

马上就要OFC 2024了&#xff0c;应该有些新图可以发一发了 先发点老图&#xff0c;丢在这里&#xff0c;怕下次不知道去哪里找 以上是以太网联盟Ethernet Alliance 在OFC2023上展示的一个演示机柜 以下是我们参与OFC2023的剪影&#xff0c;除了参与EA的演示&#xff0c;还有独…