Попробуйте вместо этого использовать более подробный синтаксис jQuery(...)
:
jQuery(function () {
jQuery('[data-toggle="tooltip"]').tooltip()
})
Это происходит потому, что разные плагины уже могут использовать символ $
, поэтому jQuery имеет вызов no конфликта чтобы убедиться, что это случайно не сломает другие вещи. Ознакомьтесь с документацией jQuery.noConflict()
для получения дополнительной информации. Это показывает хороший обходной путь, когда вы все еще можете использовать $
, если он находится в функции.
Поскольку вы обычно хотите, чтобы ваш код запускался только тогда, когда jQuery готов, вы можете сделать это в функции ready()
. Таким образом, ваш код выше может быть изменен на:
jQuery( document ).ready(function( $ ) {
$('[data-toggle="tooltip"]').tooltip();
});
Пока ваш код jQuery находится внутри функции выше, вы можете продолжать использовать $
.
Я создал бы шаблонный файл, например, названный "somename.xml.template"
<devif>
<screen id="scr1" title="[SettingsForThisCard]">
<header text="[ClimateReadings]"/>
<rd setp="123" text="[AirTemperature]" unit="°C"/>
...
Затем можно создать набор подобных ini файлов для каждого языка, содержащего:
SettingsForThisCard=your обмениваются сообщениями на данном языке
Затем можно заменить теги сообщениями, крытыми тростником из ini файлов. Преимущество состоит в том, что, если существует тег, который не имеет никакого перевода, легко обнаружить и сделать не ненужные усилия по переводу. Кроме того, это очень просто, таким образом может не быть лучший для Ваших конкретных требований.
Мы используем стандартные файлы TMX, которые являются стандартными XML-файлами для содержания интернационализировавших литералов. Каждая запись определяется маркировкой, которая является ссылкой все вокруг кода. Каждая запись имеет все возможные переводы, и самая важная часть - то, что TMX является стандартом, используемым программами перевода и профессионалами.
Если у Вас уже есть XML-файлы для содержания литералов, можно преобразовать их посредством таблицы стилей XSLT.
Вот пример формата:
<?xml version="1.0" encoding="UTF-8"?>
<tmx>
<body>
<tu tuid="$ALARM_BARCODE_READER_COMMS">
<tuv lang="ES">
<seg>Lector códigos de barras: No Operativo</seg>
</tuv>
<tuv lang="EN">
<seg>Barcode reader: Not operative</seg>
</tuv>
<tuv lang="ZH">
<seg>读卡器:通讯错误</seg>
</tuv>
</tu>
<tu tuid="$ALARM_BARCODE_READER_FAIL">
<tuv lang="ES">
<seg>Lector códigos de barras: Fallo</seg>
</tuv>
<tuv lang="EN">
<seg>Barcode Reader: Fail</seg>
</tuv>
<tuv lang="ZH">
<seg>读卡器:故障</seg>
</tuv>
</tu>
<tu tuid="$NO_PAYMENT_MODE_AVAILABLE">
<tuv lang="ES">
<seg>No hay sistemas de pago disponibles</seg>
</tuv>
<tuv lang="EN">
<seg>No payment systems available</seg>
</tuv>
<tuv lang="ZH">
<seg>读卡器:故障</seg>
</tuv>
</tu>
<tu tuid="$ALARM_BLACKLIST_CARD">
<tuv lang="ES">
<seg>Tarjeta de pago en lista negra</seg>
</tuv>
<tuv lang="EN">
<seg>Payment card in blacklist</seg>
</tuv>
<tuv lang="ZH">
<seg>付费的IC卡是黑名单卡</seg>
</tuv>
</tu>
</body>
</tmx>
Почему бы не использовать объекты XML для определения условий, которые должны быть локализованы и их, имеют отдельные ДАТЫ для каждого языка? Это - по существу подход, используемый Firefox XUL, например: Локализация на MDN.