根据页面语言动态加载内容

Dynamically load content based on page language

我正在使用具有以下元素来设置语言的外部系统:

<meta http-equiv="Content-Language" content="en-US">

我们有以下语言:

en-US, en-GB, fr-FR, de-DE, es-ES, pl-PL, and pt-BR

我们可以创建自定义页面,我想使用 jQuery.load() 根据 "content" 属性的值加载不同的内容。

例如:

IF "content=fr-FR" THEN $('#support-info').load('support-info-fr.html');

我绝不是网络开发人员(我更像是 copy/paste/edit 那种人)。我搜索了几个小时并找到了 if/else jQuery 语法,但我似乎无法将它们放在一起。

希望我已经提供了所有需要的信息并尽可能清楚地说明了这一点。谁能给我指点一下吧direction/help我出来了?将不胜感激!

使用attribute selector

const contentLanguage = $('[http-equiv="Content-Language"]').attr('content')

if (contentLanguage == 'fr-FR') {
  $('#support-info').load('support-info-fr.html');
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<meta http-equiv="Content-Language" content="en-US">

if ($('[http-equiv="Content-Language"][content="fr-FR"]').length) {
  $('#support-info').load('support-info-fr.html');
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<meta http-equiv="Content-Language" content="en-US">

您可以使用基本选择器轻松获取元标记。然后使用 switch case 语句设置要加载的页面。然后像上面那样加载页面。

$(document).ready(() => {
  var lang = $('meta[http-equiv="Content-Language"]').attr('content');
  var page = '';
  switch(lang) {
    case 'en-US':
    page = 'support-info-en.html'
    break;
    case 'fr-FR':
    page = 'support-info-fr.html'
    break;
    //Add all possibilities
  }
  $('#support-info').load(page);
});
<meta http-equiv="Content-Language" content="en-US">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>