2016-04-06 22 views
0

Ülke kodu, IP adresine bir JSON araması yaparak [http://ip-api.com/json][1] [1]: http://ip-api.com/json adresine dönmeye çalışıyorum ve daha sonra para birimini bir çereze yazmak istiyorum. ve tüm site için para birimini güncelleyin.ShopCut'u almak için GetSon API çağrısı getCode

Şu anda sahip olduğum kod aşağıda (HTML ve CSS jsfiddle'dan ve kodun bir parçası değil), jsfiddle üzerinde çalışıyor ancak Shopify'ta mağazamda çalışmasını göremiyorum.

$.getJSON('http://ip-api.com/json', function (location) { 
 

 
    if (location.countryCode == 'AU') { 
 
     $('#currencies').text("AUD"); 
 
     Currency.cookie.write('AUD'); 
 
     Currency.convertAll(Currency.currentCurrency, 'AUD'); 
 
    } 
 
    else { 
 
     $('#currencies').text("EUR"); 
 
     Currency.cookie.write('EUR'); 
 
     Currency.convertAll(Currency.currentCurrency, 'EUR'); 
 
    } 
 
});
body { 
 
    font-size: 75%; 
 
    font-family:"Segoe UI", Verdana, Helvetica, Sans-Serif; 
 
} 
 
#body { 
 
    clear: both; 
 
    margin: 0 auto; 
 
    max-width: 534px; 
 
} 
 
table { 
 
    border-collapse: collapse; 
 
    border-spacing: 0; 
 
    margin-top: 0.75em; 
 
    border: 0 none; 
 
    margin-top:35px; 
 
} 
 
#body td { 
 
    padding:15px 30px 15px 10px; 
 
} 
 
#body tr td:nth-child(1) { 
 
    font-weight:bold; 
 
} 
 
#address { 
 
    width:400px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="body"> 
 
    <table border="1"> 
 
     <tr> 
 
      <td>Currency:</td> 
 
      <td id="currencies"></td> 
 
     </tr> 
 
    </table> 
 
</div>

Bu benim ilk kez JS ile kodlama ve JSON arama yapmak, bu yüzden Shopify veya başka sayısında jQuery kullanırken bir sözdizimi hatası eğer çok emin değilim? Yardımlarınız için şimdiden teşekkür ederiz.

cevap

0

.text geçerli bir kullanım olup olmadığından emin değilim. Bu

$.getJSON('http://ip-api.com/json', function (location) { 
    if (location.countryCode == 'AU') { 
     $('#currencies').html('AUD'); 
     Currency.cookie.write('AUD'); 
     Currency.convertAll(Currency.currentCurrency, 'AUD'); 
    } 
    else { 
     $('#currencies').html('EUR'); 
     Currency.cookie.write('EUR'); 
     Currency.convertAll(Currency.currentCurrency, 'EUR'); 
    } 
}); 

Ayrıca IMHO localStorage çerezler için daha iyi bir seçenektir deneyin. - yorumlarda tartışmadan http://www.w3schools.com/html/html5_webstorage.asp

Güncelleme: localStorage üzerine öneri için

$.getJSON('https://geoip.nekudo.com/api/', function (location) { 
    if (location.country.code == 'AU') { 
     $('#currencies').val('AUD'); 
     Currency.cookie.write('AUD'); 
     Currency.convertAll(Currency.currentCurrency, 'AUD'); 
    } 
    else { 
     $('#currencies').val('EUR'); 
     Currency.cookie.write('EUR'); 
     Currency.convertAll(Currency.currentCurrency, 'EUR'); 
    } 
}); 
+0

sayesinde ne yazık ki kodunuzu çalıştı ve işe yaramadı. Ne yaptığını anlamak için innerHTML fonksiyonuna biraz daha bakıyorum. Teşekkürler –

+0

Tarayıcı konsolunda görebildiğiniz, varsa, hatayı paylaşabilir misiniz? – HymnZ

+0

Shopify'da olduğu için hiçbir hata gösterilmiyor, sanırım bir deneme yanılma hatası. Kodu düzenleyip web sitemi yenileyerek test ederim. –