// JavaScript Document $(function() { var template = $('#products').html().replace('', ''); $('span.loading') .bind('ajaxStart', function() { $(this).show(); }) .bind('ajaxStop', function() { $(this).hide(); }); /************************************************************/ window.onload = (function() { getProducts(); return false; }); function getProducts() { $('#products').empty(); var url = 'http://dynamic.rakuten.co.jp/rcm/1.0/i/json?callBack=?'; var params = { developerId: '195e453513d6e5958cdaf64f4d1dac9e', affiliateId: '047c232d.2b25889a.047c232e.16b31bf2', url: location.href, carrier: '0' // 0: pc site, 1: mobile site } $.getJSON(url, params, function(data) { //console.log(data); var status = data.Header.Status; if (status != 'Success') { $('#products').empty().html('
  • Sorry! No Products Returned. Please try again!
  • '); } else { displayProducts(data); } }); } // end of getProducts function displayProducts(data) { var ads = data.Body['Ads'].Ad; ; var html = ''; for (var i=0; i<5; i++) { var code = ads[i].ItemCode; var name = ads[i].ItemName; var price = ads[i].ItemPrice; var aUrl = ads[i].AffiliateItemUrl; var mImage = ads[i].MediumImageUrl; var sImage = ads[i].SmallImageUrl; var tax = ads[i].TaxFlag; var longTxt = "[...]"; var nameLength = name.length; var MaxLength = 70; if(nameLength > MaxLength){ name = name.substr(0,MaxLength); }else{} if(tax == 0){ tax = "税込"; }else{ tax = "税別"; } //プライスに”,”区切り function addFigure(str) { var num = new String(str).replace(/,/g, ""); while(num != (num = num.replace(/^(-?\d+)(\d{3})/, "$1,$2"))); return num; } price = addFigure(price); html += template.replace('@url', aUrl).replace('@title', name).replace('@src', sImage).replace('@price', price).replace('@name', name).replace('@tax', tax).replace('@url', aUrl); } $('#products').html(html); } // end of displayProducts }); // end of jQuery