Google & Bing Search API Image

Search API

by fredd man

HTML

<a href="#openModal1">openmodal</a>

<div id="openModal1" class="modalDialog">
    <div> <a href="#close" title="Close" class="close">X</a>
<style type="text/css">

.modalDialog {
    position: fixed;
    font-family: Arial, Helvetica, sans-serif;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.8);
    z-index: 99999;
    opacity:0;
    -webkit-transition: opacity 400ms ease-in;
    -moz-transition: opacity 400ms ease-in;
    transition: opacity 400ms ease-in;
    pointer-events: none;
}
.modalDialog:target {
    opacity:1;
    pointer-events: auto;
}
.modalDialog > div {
    width: 400px;
    position: relative;
    margin: 10% auto;
    padding: 5px 20px 13px 20px;
    border-radius: 10px;
    background: #fff;
    background: -moz-linear-gradient(#fff, #999);
    background: -webkit-linear-gradient(#fff, #999);
    background: -o-linear-gradient(#fff, #999);
}
.close {
    background: #606061;
    color: #FFFFFF;
    line-height: 25px;
    position: absolute;
    right: -12px;
    text-align: center;
    top: -10px;
    width: 24px;
    text-decoration: none;
    font-weight: bold;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    -moz-box-shadow: 1px 1px 3px #000;
    -webkit-box-shadow: 1px 1px 3px #000;
    box-shadow: 1px 1px 3px #000;
}
.close:hover {
    background: #00d9ff;
}

</style>








<div id="search">
  <form id="search_form">
    <input type="text" id="search_txt" placeholder="Keyword" />
    <input type="submit" value="Search">
  </form>
</div>
<div id="result"></div>

JavaScript

$("#search_form").submit(function(e) {

  $("#result").html("");

  e.preventDefault();

  var searchQuery = $("#search_txt").val();
  //searchQuery =

  if (!searchQuery) {
    //code
    searchQuery = "hello";
  }



  $.ajax({
    type: "GET",
    dataType: "jsonp",
    url: "https://www.googleapis.com/customsearch/v1",
    data: {
      key: "AIzaSyCzb6SI_JRrp6xLLYV617Ary6n59h36ros",
      cx: "004286675445984025592:ypgpkv9fjd4",
      filter: "1",
      searchType: "image",
      //imgSize: "small",
      q: searchQuery
    }
  }).done(function(data) {


    //alert("Success");
    console.log(data);
    var googleResults = data.items;

    $(".result li").remove();
    //$('#result').isotope('destroy');


    $.each(googleResults, function(i, o) {

      var imageURL = o.image.thumbnailLink;

      if (i % 2 != 0) {

        $("#result").append("<div class='result_item'><img src='" + imageURL + "' /></div>");

      } else {

        $("#result").append("<div class='result_item'><img src='" + imageURL + "' /></div>");

      }


    })



  });



  function make_base_auth(user, password) {
    var tok = user + ':' + password;
    var hash = btoa(tok);
    return "Basic " + hash;
  }

  $.ajax({
    type: "GET",
    dataType: "json",
    url: "https://api.datamarket.azure.com/Bing/Search/v1/Image",
    beforeSend: function(xhr) {
      xhr.setRequestHeader("Authorization", make_base_auth("", "GfsqxTjDPIKNuXQZDeqj2z4uaaHNx9X0QhKYBn4Xgeg="));
    },
    data: {
      Query: "'" + searchQuery + "'",
    }
  }).done(function(data) {


    //alert("Success");
    console.log(data);
    var bingResults = data.d.results;

    $(".result li").remove();
    //$('#result').isotope('destroy');


    $.each(bingResults, function(i, o) {

      var imageURL = o.Thumbnail.MediaUrl;

      if (i % 2 != 0) {

        $("#result").append("<div class='result_item'><img src='" + imageURL + "' /></div>");

      } else {

        $("#result").append("<div...