1

ねえ、ショッピング カートを表示するカスタム スクリプトを作成しようとしています。そして、私は最も近い終了だと思いますが、関数を一度しか呼び出せないという問題があります。

http://articles-authors.com/order-form/では、右上にカートが表示され、ウェブサイトが読み込まれると、カートを作成する関数が読み込まれます。しかし、カートにカーソルを合わせようとしても何も起こらず、別の関数を呼び出してカートを再作成し、クラスをアクティブなクラスに html 要素 #cart に設定する必要があります。

コードは次のとおりです。

最初にカート作成関数を呼び出す関数

makeCartWithoutActive();
$("#cart").mouseenter(function(){
makeCartWithActive();
}).mouseleave(function(){
makeCartWithoutActive();

});

理由は、私がjquery 2.0.3を使用していて、ライブが1.7で削除されたためです。

ここでは、カートを再作成し、アクティブなクラスを #cart に設定して、カートが表示されるようにする関数を確認できます。

function makeCartWithActive(){
$.get("http://articles-authors.com/order-form/cart/get",function(data) {
  var html = "";
    if(data.msg === false){
      html = '<div id="cart" class="right active">'+
            '<div class="heading"><a><span id="cart-total">0 item(s) - $0.00</span></a></div>'+
            '<div class="content"><div class="empty">'+data.respone+'</div></div></div>';
     $("#cart").replaceWith(html);

     }else{

     html = '<div id="cart" class="right active"><div class="heading"><a><span id="cart-total">'+data.totalitem+' item(s) - $'+data.totalprice+'</span></a></div>'+
            '<div class="content"><div class="mini-cart-info"><table><tbody>';

    $.each(data.data, function(i, currProgram) {
         $.each(currProgram, function(key,val) {
            html += '<tr><td class="name">'+val.name+'</td><td class="quantity">x '+val.quantity+
                    '</td><td class="total">$'+val.price+'</td><td class="remove"><img src="http://articles-authors.com/order-form/img/remove-small.png'+
                    '" onclick="RemoveItem('+val.rowid+');" width="12" height="12" title="Remove" alt="Remove"></td></tr>';
        });
    });

      html += '</tbody></table></div>'+
            '<div class="mini-cart-total"><table><tbody><tr><td align="right"><b>Sub-Total:</b></td><td align="right">'+data.totalprice+'</td></tr><tr><td align="right"><b>Total:</b></td><td align="right">'+data.totalprice+'</td></tr></tbody></table></div>'+
            '<div class="checkout"><a class="button" href="http://articles-authors.com/order-form/cart">Checkout</a></div></div></div>';


     $("#cart").replaceWith(html);
 }},

"jsonp");

}

誰かが私を助けてくれることを願っています。私はまだjQuery/JavaScriptに慣れていないので、なぜこれが起こるのか分かりません

前もって感謝します

4

2 に答える 2