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

如何实现Google Translate元素页面加载4秒后从右侧滑入,选择后滑出?

实现Google翻译元素的延迟滑入/选择后滑出交互

核心思路

  • 用容器包裹翻译元素和竖线,统一控制滑动动画
  • 初始状态将容器移出视口右侧,通过CSS过渡实现平滑滑动
  • 页面加载完成后延迟4秒触发滑入动画
  • 监听翻译下拉框的选择事件,触发滑出动画

修改后的HTML结构

给原有的两个元素添加统一容器,方便整体控制滑动:

<div class="translate-container">
  <div id="google_translate_element"></div>
  <div class="vl"></div>
</div>

调整后的CSS样式

保留原有的自定义样式,新增滑动容器的过渡逻辑,移除原有的绝对定位margin避免冲突:

/* 滑动容器核心样式 */
.translate-container {
  position: fixed;
  right: -150px; /* 初始状态完全移出视口右侧 */
  top: 67px;
  transition: right 0.3s ease-in-out; /* 平滑滑动过渡动画 */
  z-index: 9999; /* 确保在页面最上层显示 */
}

/* Google翻译下拉框自定义样式 */
#google_translate_element select{
  background: rgba(246,237,253,0.92) !important;
  border: none !important;
  color: rgba(54,58,173) !important;
  width: 115px !important;
  border-radius: 5px !important;
  padding: 5px 5px !important;
  font-size: 11.8px !important;
  position: relative !important; 
  margin: 17px 0 0 0 !important; /* 调整内部间距,保持原垂直位置 */
}

/* 竖线自定义样式 */
.vl {
  position: absolute !important;
  border-left: 3.7px solid green !important;
  border-radius: 2px !important;
  height: 30px !important;
  top: 0 !important;
  left: 120px !important; /* 相对于容器定位,保持原横向位置 */
}

/* 隐藏Google翻译自带冗余元素 */
.goog-logo-link,.goog-te-gadget span,div#goog-gt-{
  display:none!important;
}
.goog-te-gadget{
  color:transparent!important;
  font-size:0;
}
/* 隐藏翻译顶部横幅和提示框 */
.goog-te-banner-frame{
  display:none !important;
}
#goog-gt-tt, .goog-te-balloon-frame{
  display: none !important;
}
.goog-text-highlight { 
  background: none !important; 
  box-shadow: none !important;
}

交互逻辑JS代码

先加载Google翻译API,再实现延迟滑入和选择后滑出的逻辑:

// 初始化Google翻译元素
function googleTranslateElementInit() {
  new google.translate.TranslateElement({pageLanguage: 'en'}, 'google_translate_element');
  
  // 等待动态生成的下拉框加载完成后绑定事件
  setTimeout(() => {
    const translateSelect = document.querySelector('#google_translate_element select');
    if (translateSelect) {
      // 选择语言后触发滑出
      translateSelect.addEventListener('change', () => {
        document.querySelector('.translate-container').style.right = '-150px';
      });
    }
  }, 500);
}

// 页面加载完成后延迟4秒触发滑入
window.addEventListener('load', () => {
  setTimeout(() => {
    document.querySelector('.translate-container').style.right = '20px'; // 滑入到右侧留20px间距
  }, 4000);
});

需在HTML底部引入Google翻译API脚本:

<script src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>

内容的提问来源于stack exchange,提问作者Johnny blee Rowland

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 03:09:26