gpt4 book ai didi

javascript - 单击时显示缩略图的大图像,但有多个容器

转载 作者:行者123 更新时间:2023-11-28 02:27:18 25 4
gpt4 key购买 nike

在 Stackoverflow 上已经问了很多类似的问题。但是在尝试了几天这里的其他解决方案之后,我找不到任何与我正在尝试做的完全匹配的解决方案。

我想创建一个固定大小的容器,它与页面顶部的高度始终相同,与页面左侧的边距始终相同。容器底部有缩略图(最终会在右侧有向上/向下滚动的箭头 - 还没有那么远)和上面显示的较大图像,信息位于较大图像右侧的单独框中.每次单击缩略图时,较大的图像都会更改以显示新缩略图的较大版本以及相应的信息。

所有缩略图都是 150 x 150。所有大图都是 300 x 300。信息框中显示的信息是 img alt 文本。图像都存储在与代码相同的文件夹中,并且具有相同的文件名,只是更改了“thumb”或“large”。例如,“image_01_thumb.png”或“image_01_large.png”。

我的页面上有几个现有元素是整个网站的默认元素,我认为它们可能会导致问题。

$('#thumbs img').click(function() {
$('#largeimage').attr('src', $(this).attr('src').replace('thumb', 'large'));
$('#description').html($(this).attr('alt'));
});
* {
margin: 0;
padding: 0;
}

header {
background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url(pic1.png);
height: 100vh;
background-size: cover;
background-position: center;
}

.main-nav {
float: right;
list-style: none;
margin-top: 45px;
}

.main-nav li {
display: inline-block;
}

.main-nav li a {
color: white;
text-decoration: none;
padding: 5px 20px;
font-family: "Roboto", sans-serif;
font-size: 16px;
}

.main-nav li.active a {
border: 1px solid white;
}

.main-nav li a:hover {
border: 1px solid white;
}

.logo img {
width: 540px;
height: auto;
float: left;
}

body {
font-family: monospace;
}

.row {
max-width: 1200px;
margin: auto;
}

#thumbs {
padding-top: 10px;
overflow: hidden;
}

#largeImage {
padding: 4px;
}

#thumbs img {
float: left;
margin-right: 0px;
opacity: 0.8;
padding: 4px;
}

#thumbs img:hover {
opacity: 1;
}

#description {
background: black;
color: white;
position: relative;
bottom: 0;
padding: 10px 20px;
width: 230px;
margin: 5px;
}

#panel {
position: relative;
}

#gallery {
position: absolute;
height: 520px;
width: 660px;
margin-left: 30px;
margin-top: 180px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!DOCTYPE html>
<html lang="en">

<head>
<title>PROJECTS</title>
<link rel="shorcut icon" href="favicon.png" type="image/png">
<link rel="icon" href="favicon.png" type="image/x-icon">
<link rel="stylesheet" href="style.css" type="text/css">
<script type="text/javascript" script src="portgrid.js"></script>
</head>

<body>
<header>
<div class="row">
<div class="logo">
<img src="logo.png">
</div>
<ul class="main-nav">
<li><a href="index.html">HOME</a></li>
<li><a href="portabout.html">ABOUT</a></li>
<li class="active"><a href="portprojects.html">PROJECTS</a></li>
<li><a href="portconnect.html">CONNECT</a></li>
</ul>
</div>

<!-- the image container -->
<div id="gallery">
<div id="panel">
<img id="largeImage" src="image_01_large.png" />
</div>
<div id="thumbs">
<img src="image_01_thumb.png" alt="TBN" />
<img src="image_02_thumb.png" alt="Brain" />
<img src="image_03_thumb.png" alt="AWG" />
<img src="image_04_thumb.png" alt="Building" />
</div>
</div>

</header>

最佳答案

代码没问题,问题是你把Js上的大图ID拼错了,是#largeImage,不是#largeimage

$('#thumbs img').click(function() {
$('#largeImage').attr('src', $(this).attr('src').replace('thumb', 'large'));
$('#description').html($(this).attr('alt'));
});

关于javascript - 单击时显示缩略图的大图像,但有多个容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53243716/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com