2016-01-13 100 views
1

我在我的wordpress網站上使用Gtranslate plugin進行翻譯。該插件生成了一個腳本,我在header.php附上。當我嘗試重新加載一個頁面時,默認顯示爲英文(未翻譯)。當我點擊頂部的Finnish時,它切換到芬蘭語。我希望我的網站只能使用芬蘭語,所以有人幫助我將onclick事件轉換爲pageload事件。將Onclick事件轉換爲頁面加載事件

<!-- GTranslate: http://gtranslate.net/ --> 
<div class="switcher notranslate"> 
    <div class="selected"> 
    <a href="#" onclick="return false;"> 
     <span class="gflag" style="background-position:-100px -100px;"> 
     <img src="/gtranslate/blank.png" height="16" width="16" alt="fi" /> 
     </span>Finnish 
    </a> 
    </div> 
    <div class="option"> 
    <a href="#" onclick="doGTranslate('fi|fi');jQuery(this).parent().parent().find('div.selected a').html(jQuery(this).html());return false;" title="Finnish" class="nturl selected"> 
     <span class="gflag" style="background-position:-100px -100px;"> 
     <img src="/gtranslate/blank.png" height="16" width="16" alt="fi" /> 
     </span>Finnish 
    </a> 
    </div> 
</div> 
<script type="text/javascript"> 
    jQuery('.switcher .selected').click(function() { 
    if (!(jQuery('.switcher .option').is(':visible'))) { 
     jQuery('.switcher .option') 
     .stop(true, true) 
     .delay(50) 
     .slideDown(800); 
    } 
    }); 
    jQuery('body').not('.switcher .selected').mousedown(function() { 
    if (jQuery('.switcher .option').is(':visible')) { 
     jQuery('.switcher .option') 
     .stop(true, true) 
     .delay(300) 
     .slideUp(800); 
    } 
    }); 
</script> 
<div id="google_translate_element2"></div> 
<script type="text/javascript"> 
    function googleTranslateElementInit2() { 
    new google.translate.TranslateElement({ 
     pageLanguage: 'fi', 
     autoDisplay: false 
    }, 'google_translate_element2'); 
    } 
</script> 
<script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit2"></script> 


<script type="text/javascript"> 
    /* <![CDATA[ */ 
    function GTranslateFireEvent(element, event) { 
    try { 
     if (document.createEventObject) { 
     var evt = document.createEventObject(); 
     element.fireEvent('on' + event, evt) 
     } else { 
     var evt = document.createEvent('HTMLEvents'); 
     evt.initEvent(event, true, true); 
     element.dispatchEvent(evt) 
     } 
    } catch (e) {} 
    } 

    function doGTranslate(lang_pair) { 
    if (lang_pair.value) lang_pair = lang_pair.value; 
    if (lang_pair == '') return; 
    var lang = lang_pair.split('|')[1]; 
    var teCombo; 
    var sel = document.getElementsByTagName('select'); 
    for (var i = 0; i < sel.length; i++) 
     if (sel[i].className == 'goog-te-combo') teCombo = sel[i]; 
    if (document.getElementById('google_translate_element2') == null || 
     document.getElementById('google_translate_element2').innerHTML.length == 0 || 
     teCombo.length == 0 || 
     teCombo.innerHTML.length == 0) { 
     setTimeout(function() { 
     doGTranslate(lang_pair) 
     }, 500) 
    } else { 
     teCombo.value = lang; 
     GTranslateFireEvent(teCombo, 'change'); 
     GTranslateFireEvent(teCombo, 'change') 
    } 
    } 

    function GTranslateGetCurrentLang() { 
    var keyValue = document.cookie.match('(^|;) ?googtrans=([^;]*)(;|$)'); 
    return keyValue ? keyValue[2].split('/')[2] : null; 
    } 
    if (GTranslateGetCurrentLang() != null) jQuery(document).ready(function() { 
    jQuery('div.switcher div.selected a').html(jQuery('div.switcher div.option').find('span.gflag img[alt="' + GTranslateGetCurrentLang() + '"]').parent().parent().html()); 
    }); 
    /* ]]> */ 
</script> 

回答

0

按我的理解,下面的代碼是將網頁翻譯成Finnish

doGTranslate('fi|fi'); 
jQuery(this) 
    .parent() 
    .parent() 
    .find('div.selected a') 
    .html(jQuery(this).html()); 
return false; 

你只需要致電$(document).ready(function(){...})

0

使用該代碼的腳本:

<script> 
    $(document).ready(function(){ 
     doGTranslate('fi|fi');jQuery(this).parent().parent().find('div.selected a').html(jQuery(this).html());return false; 
    } 
</script> 

理所當然地將它添加到您的標題(我認爲它的作品,如果你打字後在頭部的所有腳本。)

0

而是在頁面加載調用doGTranslate() ..代碼腳本點擊oage負載<a>標籤..

<a href="#" id="load_clicked" onclick="doGTranslate('fi|fi');jQuery(this).parent().parent().find('div.selected a').html(jQuery(this).html());return false;" title="Finnish" class="nturl selected"><span class="gflag" style="background-position:-100px -100px;"><img src="/gtranslate/blank.png" height="16" width="16" alt="fi" /></span>Finnish</a> 

    <script type="text/javascript"> 
    $(window).load(function() { 
     $('#load_clicked').click(); 
    }); 
    </script>