0

特定の HTML ページに言語スイッチャーを追加したいと考えています。言語テキストは必要ありません。クリックに応じて別のサイトへのリンクを変更する必要があるだけです。ここで、リンクの変更に対処するためだけに 3 つの HTML ページを作成するのはあまり意味がありませんが、私の jquery スキルはそれほど高くありません。

宛先構造は次のようになります。

<ul>
<li><a  class="clickButton" href="folder1/firstLink/Languages/English/folder/index.html">Index Link</a></li>
<li><a  class="clickButton" href="../folder2/secondLink/Languages/English/folder/index.html">A different Link </a></li>
<li><a  class="clickButton" href="../../folder3/Languages/English/folder/index.html">Another different link</a></li>

<ul>

<ul>
<li><a  class="clickButton" href="folder1/firstLink/Languages/Spanish/folder/index.html">Index Link</a></li>
...
<ul>

ご覧のとおり、リンクを機能させるには、言語名 (「英語」) をスペイン語に置き換えるだけで済みます。したがって、ユーザーが対応するフラグをクリックすると、それに応じて URL 文字列が変更されると考えていました。

言語名を切り替える方法の例をいくつか教えていただければ幸いです

4

2 に答える 2

1

自分で簡単にできます: カスタム データ属性をリンクに追加します。

<a data-lang="English" href="">

jQuery でアクセスし$link.data('lang');て、href に追加するよりも。

于 2012-10-15T12:19:42.423 に答える
1

HTML:

<a data-lang="Spanish">To Spanish</a>
<a data-lang="Russian">To Russian</a>

JavaScript:

var current = "English"
$("[data-lang]").on("click", function() {
    var lang = $(this).data("lang");
    $(".clickButton").prop("href", function(i, href) {
        return href.replace(current, lang);
    });
    current = lang;
});

デモ: http://jsfiddle.net/a2xqL/

于 2012-10-15T12:17:05.943 に答える