javascript - 图像 slider 可在不同按钮单击上打开不同文件夹中的图像

标签 javascript jquery html css image

我有一个图像 slider ,可以打开同一文件夹中的不同图像(在文件夹img1中将图像命名为1.jpg、2.jpg)。是否可以在图像 slider 下方添加按钮,为我提供来自不同文件夹的滑动图像(文件夹 img2 中的 1.jpg,2.jpg ;文件夹中的 1.jpg,2.jpg >文件夹img3)

<div id="slider">
    <img src="img/1.jpg" alt="Slide 1" />
    <img data-src="img/2.jpg" alt="Slide 2" />
    <img data-src="img/3.jpg" alt="Slide 3" />
    <img data-src="img/4.jpg" alt="Slide 4" />
</div><button>Images from new folder</button> 

最佳答案

我猜您正在使用在 data-src 中显示图像的库/代码。 基本上,您可以动态更改'data-src'(或仅图像'src)属性并更改您正在使用的路径。

这取决于实现,因为库可能会在初始化时缓存data-src,然后忽略对其的更改。

无论如何,您可以这样做(我在本例中使用src,但您也可以更改为data-src):

var gallery = document.querySelector('#gallery');
var button = document.querySelector('#your-button-id');

button.addEventListener('click', () => setImagesFolder('folderName'));

function setImagesFolder(folder) {
  gallery.querySelectorAll('img').forEach(imgEl => {
    var currPath = imgEl.getAttribute('data-src');
    var basePath = currPath.slice(currPath.lastIndexOf('/'))
    console.log(folder + basePath)
    imgEl.setAttribute('src', folder + basePath)
  })
}
<div id="gallery">
  <img data-src="folder/1.jpg">
  <img data-src="folder/2.jpg">
  <img data-src="folder/3.jpg">
  <img data-src="folder/4.jpg">
  <img data-src="folder/5.jpg">
</div>
<button id="your-button-id">Change images path</button>

关于javascript - 图像 slider 可在不同按钮单击上打开不同文件夹中的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46263112/

相关文章:

javascript - Z-index 不工作嵌套绝对 div

javascript - 可以从浏览器中拖动的隐藏文本?

php - 我需要一个带有 html 的 php 文件中的 !DOCTYPE 声明吗?

javascript - Angular 4 Universal this.html.charCodeAt 不是函数

jquery - 需要帮助将 for 循环/if 语句转换为 jQuery 选择器

javascript - Tab容器刷新

html - css中的移动菜单栏

html - 具有不透明度的元素在 Firefox 中落后于 iframe

javascript - 如何在 Canvas 中创建杜瓦尔三 Angular 形

javascript - 表达并获取 : TypeError: NetworkError when attempting to fetch resource