Jquery-checkout

提供:Dev Guides
移動先:案内検索

jQuery-Checkout.js

Checkout.jsは、eコマースWebサイトのチェックアウトを簡単に実装するためのjQueryプラグインです。

以下に示すように単純なcheckout.jsの例-

<html xmlns = "https://www.w3.org/1999/xhtml">
   <head>
      <meta http-equiv = "Content-Type" content = "text/html; charset = iso-8859-1"/>
      <title>Untitled Document</title>
      <script type = "text/javascript" src = "jquery-1.3.2.js"></script>
      <script type = "text/javascript" src = "jquery.livequery.js"></script>
      <link href = "css.css" rel = "stylesheet"/>

      <script type = "text/javascript">

         $(document).ready(function() {
             var Arrays = new Array();
            $('#wrap li').mousemove(function(){
               var position = $(this).position();
               $('#cart').stop().animate({
                  left   : position.left+'px',
               },250,function(){
               });
            }).mouseout(function(){
            });

            $('#wrap li').click(function(){
               var thisID = $(this).attr('id');
               var itemname  = $(this).find('div .name')l();
               var itemprice = $(this).find('div .price')l();

               if(include(Arrays,thisID)){
                  var price = $('#each-'+thisID).children(".shopp-price").
                     find('em')l();
                  var quantity = $('#each-'+thisID).children(".shopp-quantity")l();
                  quantity = parseInt(quantity)+parseInt(1);
                  var total = parseInt(ite mprice)*parseInt(quantity);

                  $('#each-'+thisID).children(".shopp-price").
                     find('em')l(total);
                  $('#each-'+thisID).children(".shopp-quantity")l(quantity);

                  var prev_charges = $('.cart-total span')l();
                  prev_charges = parseInt(prev_charges)-parseInt(price);
                  prev_charges = parseInt(prev_charges)+parseInt(total);

                  $('.cart-total span')l(prev_charges);
                  $('#total-hidden-charges').val(prev_charges);
               } else {
                  Arrays.push(thisID);
                  var prev_charges = $('.cart-total span')l();
                  prev_charges = parseInt(prev_charges)+parseInt(itemprice);

                  $('.cart-total span')l(prev_charges);
                  $('#total-hidden-charges').val(prev_charges);

                  $('#left_bar .cart-info').append('
                     <div class = "shopp" id = "each-'+thisID+'">
                        <div class = "label">'+itemname+'</div>
                        <div class = "shopp-price">
                           $<em>'+itemprice+'</em></div>
                        <span class = "shopp-quantity">1</span>
                        <img src = "remove.png" class = "remove"/>
                        <br class = "all"/>
                     </div>');

                  $('#cart').css({'-webkit-transform' :
                     'rotate(20deg)','-moz-transform' : 'rotate(20deg)' });
               }

               setTimeout('angle()',200);
            });
            $('.remove').livequery('click', function() {
               var deduct = $(this).parent().children(".shopp-price").find('em')l();
               var prev_charges = $('.cart-total span')l();
               var thisID = $(this).parent().attr('id').replace('each-','');
               var pos = getpos(Arrays,thisID);

               Arrays.splice(pos,1,"0")
               prev_charges = parseInt(prev_charges)-parseInt(deduct);

               $('.cart-total span')l(prev_charges);
               $('#total-hidden-charges').val(prev_charges);
               $(this).parent().remove();
            });
            $('#Submit').livequery('click', function() {
               var totalCharge = $('#total-hidden-charges').val();

               $('#left_bar')l('Total Charges: $'+totalCharge);
               return false;
            });
         });
         function include(arr, obj) {
            for(var i = 0; i<arr.length; i++) {
               if (arr[i] == obj) return true;
            }
         }
         function getpos(arr, obj) {
            for(var i = 0; i<arr.length; i++) {
               if (arr[i] == obj) return i;
            }
         }
         function angle(){$('#cart').css({'-webkit-transform' :
            'rotate(0deg)','-moz-transform' : 'rotate(0deg)' });}

      </script>
   </head>

   <body>
      <div align = "left">
         <div id = "wrap" align = "left">

            <ul>
               <li id = "1">
                  <img src = "a1.png" class = "items" height = "100" alt = ""/>

                  <br clear = "all"/>
                  <div><span class = "name">Learn Java:
                     Price</span>: $<span class = "price">
                     800</span> </div>
               </li>

               <li id = "2">
                  <img src = "5.png" class = "items" height = "100" alt = ""/>

                  <br clear = "all"/>
                  <div><span class = "name">Learn HTML
                     </span>: $<span class = "price">500
                     </span></div>
               </li>

               <li id="3">
                  <img src = "1.png" class = "items" height = "100" alt = ""/>

                  <br clear = "all"/>
                  <div><span class = "name">Learn Android
                     </span>: $<span class = "price">450
                     </span></div>
               </li>

               <li id = "4">
                  <img src = "6.png" class = "items" height = "100" alt = ""/>

                  <br clear = "all"/>
                  <div><span class = "name">Learn SVG
                     </span>: $<span class = "price">1200
                     </span></div>
               </li>

               <li id = "5">
                  <img src = "7.png" class = "items" height = "100" alt = ""/>

                  <br clear = "all"/>
                  <div> <span class = "name">Learn Bootstrap
                     </span>: $<span class = "price">65
                     </span></div>
               </li>

               <li id = "6">
                  <img src = "5.png" class = "items" height = "100" alt = ""/>

                  <br clear = "all"/>
                  <div><span class = "name">Learn HTML
                     </span>: $<span class = "price">800
                     </span> </div>
               </li>

               <li id = "7">
                  <img src = "7.png" class = "items" height = "100" alt = ""/>

                  <br clear = "all"/>
                  <div><span class = "name"> Learn Bootstrap
                     </span>: $<span class = "price">45
                     </span></div>
               </li>

               <li id = "8">
                  <img src = "6.png" class = "items" height = "100" alt = ""/>

                  <br clear = "all"/>
                  <div><span class = "name">Learn SVG
                     </span>: $<span class = "price">900
                     </span></div>
               </li>

               <li id = "9">
                  <img src = "8.png" class = "items" height = "100" alt = ""/>

                  <br clear = "all"/>
                  <div><span class = "name">Learn Angular Js
                     </span>: $<span class = "price">20
                     </span></div>
               </li>

            </ul>
            <br clear = "all"/>
         </div>

         <div id = "left_bar">
            <form action = "#" id="cart_form" name = "cart_form">
               <div class = "cart-info"></div>

               <div class = "cart-total">
                  <b>Total Charges:     
                           </b>
                     $<span>0</span>

                  <input type = "hidden" name = "total-hidden-charges"
                     id = "total-hidden-charges" value = "0"/>
               </div>

               <button type = "submit" id = "Submit">CheckOut</button>
            </form>
         </div>

      </div>
   </body>
</html>

これは、次の結果を生成する必要があります-

リンク:/jquery/src/checkout/index [ここをクリック]