You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用JavaScript实现页面加载时随机展示对应图片及关联文本

实现方案

你只需要在现有代码基础上补充文本块的匹配显示逻辑即可,具体修改步骤如下:


1. 完善JavaScript代码

原有JS已经实现了随机图片的选取逻辑,只需要新增对应文本块的显示规则即可,同时建议加上DOM加载完成的监听,避免元素未渲染时执行JS报错。
修改后的完整JS代码如下:

// 等待页面DOM全部加载完成后再执行逻辑
jQuery(function() {
  // 用对象数组统一管理图片和对应文本的映射关系,后续新增内容时直接加数据即可,不用改逻辑
  const contentMap = [
    { img: "image1.png", textClass: "section-text-1" },
    { img: "image2.png", textClass: "section-text-2" },
    { img: "image3.png", textClass: "section-text-3" }
  ];
  // 生成随机索引
  const randomIndex = Math.floor(contentMap.length * Math.random());
  const target = contentMap[randomIndex];
  // 设置随机图片
  jQuery('#randomImages').attr('src', target.img);
  // 显示匹配的文本块
  jQuery(`.${target.textClass}`).show();
});

如果你不想调整原有数组的写法,也可以直接在原有JS代码最后加一行即可生效:

jQuery('.section-text-' + (x + 1)).show();

2. 补充jQuery依赖引入

你当前的HTML代码没有引入jQuery库,但JS代码用了jQuery语法,需要在引入random-picture.js之前先引入jQuery:

<!-- 新增jQuery引入,放在random-picture.js的前面 -->
<script src="https://cdn.staticfile.org/jquery/3.6.4/jquery.min.js"></script>
<script src="random-picture.js"></script>

3. 可选HTML优化(非必须,建议修改)

当前HTML里h1标签嵌套p标签不符合HTML语义规范,建议调整为:

<div class="section-text-1">
  <h1>RANDOM 1</h1>
  <p>random1</p>
</div>

其余两个文本块也做同样修改即可。

修改完成后每次页面加载就会自动随机展示匹配的图片和对应文本。

内容的提问来源于stack exchange,提问作者Adzidue

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 05:45:02