【发布时间】:2017-10-12 14:40:03
【问题描述】:
我正在使用社交分享按钮 gem 在社交媒体上分享博客文章。我已将网站国际化,这意味着该网站是双语的(英语和德语)。一切正常,但如果我切换到德语,我的社交分享按钮会出现问题:
show.html.erb
<div id="share_box">
<% if I18n.locale == :de %>
<h3 class="share_title wow bounceIn" data-wow-duration="1400ms" data-wow-delay="200ms">Teile diesen beitrag</h3>
<% else %>
<h3 class="share_title wow bounceIn" data-wow-duration="1400ms" data-wow-delay="200ms">Share this Post</h3>
<% end %>
<div class="wow fadeIn" data-wow-duration="1400ms" data-wow-delay="200ms">
<% if I18n.locale == :de %>
<%= social_share_button_tag(@post.title_de, :url => post_url(@post)) %>
<% else %>
<%= social_share_button_tag(@post.title_en, :url => post_url(@post)) %>
<% end %>
</div>
</div>
英语:
<a rel="nofollow " data-site="twitter" class="ssb-icon ssb-twitter" onclick="return SocialShareButton.share(this);" title="Share to Twitter" href="#"></a>
德语:
<a rel="nofollow " data-site="twitter" class="ssb-icon ssb-twitter" onclick="return SocialShareButton.share(this);" title="<span class=" translation_missing"="">Share To" href="#"></a>
如您所见,gem 中缺少翻译,这就是为什么会出现这个丑陋文字的原因!为了解决这个问题,我不想用 css 显示文本。不幸的是,我有很大的问题要触发文本!
这是迄今为止我尝试过的:
1) 效果为零
.translation_missing {
display: none !important;
}
2) 整个图标消失了
a[title] {
display: none !important;
}
3) 尝试用 JavaScript 摆脱它(只有悬停文本消失了)
$(document).ready(function() {
$("a").removeAttr("title");
});
悬停文本是:
<span class=
使用 JavaScript 检查元素:
<a rel="nofollow " data-site="twitter" class="ssb-icon ssb-twitter" onclick="return SocialShareButton.share(this);" translation_missing"="">Share To" href="#"></a>
如果有人有任何提示如何解决这个问题并删除这个丑陋的文字,我会非常高兴!提前致谢!
【问题讨论】:
-
真正的问题不是缺少翻译吗?
-
绝对可以,但如果一切正常,如果 gem 中缺少翻译,我可能不会这样做:) 我需要做的就是让文本消失...
-
那么跨度从何而来?
-
这是一个需要在 RoR 端解决的问题。不是js或css。因为 RoR 渲染了无效的 html。
-
你可以看看locale@trickydiddy,我觉得更简单,而且很可能你会不止一次需要它。
标签: javascript html css ruby-on-rails