0

私はこのスクリプトを持っています:

function jqueryxmltranslator(event) {
// Jquery XML Translator
var language = 'hungarian';
$.ajax({
    url: 'lang/hu_HU.xml',
    success: function(xml) {
        $(xml).find('translation').each(function(){
            var id = $(this).attr('id');
            var text = $(this).find(language).text();
            $("." + id).html(text);
        });
    }
});
};
$('.menu-item-152 a').on('click', jqueryxmltranslator);
$('.menu-item-153 a').off('click', jqueryxmltranslator);

XML は次のようになります。

<?xml version="1.0" encoding="utf-8"?>
<translations>
    <translation id="menu-item-112 a">
        <english>Portraits</english>
        <hungarian>Portrék</hungarian>
    </translation>  
</translations>

これにより、私の Web サイトが拡張 XML ファイルによって特定の言語に翻訳されます。正常に動作しますが、 .off() は機能をオフにしません。私はジャバスクリプトを知りません。このコードの何が問題になっていますか?

これは、翻訳をオフにできる代替の実用的なソリューションです-XMLから元の英語の行を呼び出します...

$('.menu-item-152 a').on('click', function(e){ 
// Jquery XML Language Translator
var language = 'hungarian';
$.ajax({
    url: 'lang/hu_HU.xml',
    success: function(xml) {
        $(xml).find('translation').each(function(){
            var id = $(this).attr('id');
            var text = $(this).find(language).text();
            $("." + id).html(text);
        });
    }
});
});

$('.menu-item-153 a').on('click', function(e){ 
// Jquery XML Language Translator
var language = 'english';
$.ajax({
    url: 'lang/hu_HU.xml',
    success: function(xml) {
        $(xml).find('translation').each(function(){
            var id = $(this).attr('id');
            var text = $(this).find(language).text();
            $("." + id).html(text);
        });
    }
});
});

しかし、これは非常に醜い解決策です。

4

1 に答える 1