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

点击显示邮箱地址时隐藏「Show E-mail」按钮的实现问题求助

邮箱显示功能修改方案

核心修改点

  • 给「Show E-mail」触发元素新增唯一ID,方便JS操作隐藏
  • 补充点击后隐藏触发按钮的逻辑
  • 优化多余a标签避免点击跳转页面顶部

修改后完整代码

JavaScript 代码

function SEmail() {
  // 选中邮箱元素
  const emailEl = document.getElementById('email');
  // 选中触发按钮元素
  const triggerEl = document.getElementById('emailTrigger');
  if (emailEl.style.display === 'none') {
    // 显示邮箱,inline可保证和前面文字同行,需要换行的话换成block即可
    emailEl.style.display = 'inline';
    // 隐藏触发按钮
    triggerEl.style.display = 'none';
  }
}

HTML 代码

<p class="email">
  <?php _e('E-mail:', 'theme') ?>
  <span id="emailTrigger" onclick="SEmail()" style="cursor: pointer;">Show E-mail</span>
  <span id="email" style="display:none">
    <a href="mailto:<?php echo contact_email(); ?>">Email link</a>
  </span>
</p>

可选优化

如果你想保留原来的a标签样式,可以不用移除a标签,只需要给点击事件加阻止默认行为即可,修改触发部分代码为:

<span id="emailTrigger">
  <a href="#" onclick="SEmail(); return false;">Show E-mail</a>
</span>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 02:57:02