2011-07-18 4 views
-1

誰でもこのコードスニペットが何をしているのか理解できますか?私はウェブサイトを維持しており、これが私が抱えている問題の原因だと思う。JQueryのスニペットコードを理解する

function cust_addToCart(itemid, itemqty, options, viaajx, loadingf, callback) { 
    var url = "/app/site/backend/additemtocart.nl?buyid=" + itemid + "&qty=" + itemqty; 
    document.location.href = url; 
} 


$('#itemlist .addtocart-lnk').click(function() { 
    $(this).next().find('.addtocart').click(); 
    return false; //Would this return a # for a link? 
}); 
+0

あなたの質問は最後の 'return false'についてのみですか? – deceze

+2

申し訳ありませんが、あなたの質問は理にかなっていません。あなたは、あなたが持っている問題を述べるのではなく、決して呼び出されない関数を定義するいくつかのコードを非難し、そのコメントに実在的な質問を埋め込みます。投票を終了する。 –

+2

Hamidiが言及したように、あなたは本当にあなたの問題を述べるべきです。このサイトでは、各行に段落を付けることができます。問題が何であるか分からない限り、より多くの情報が必要な部分はわかりません。 – rkw

答えて

7

このコード:

$('#itemlist .addtocart-lnk').click(function() { 
    $(this).next().find('.addtocart').click(); 
    return false; //Would this return a # for a link? 
}); 

は、ID itemlistを持つ要素の子であるクラスaddtocart-lnkを持つ要素のclickイベントのイベントハンドラをバインドしています。そのイベントハンドラ内では、以下:

$(this).next().find('.addtocart').click(); 

です:

  1. がクリックされたリンクのnext immediate siblingを見つけます。
  2. その後findingその兄弟要素の子のクラスaddtocartとすべての要素、
  3. プログラム

このラインこれらの要素にclickイベントをトリガー:

return false; 

は、デフォルトの動作を妨げています(あなたのマークアップを見ることなく、言い難い)通常、これにより、リンクのフォローやブラウザの新しいページの表示が妨げられます。


この機能:

function cust_addToCart(itemid, itemqty, options, viaajx, loadingf, callback) { 
    var url = "/app/site/backend/additemtocart.nl?buyid=" + itemid + "&qty=" + itemqty; 
    document.location.href = url; 
} 

は、関数に渡される引数itemiditemqty、との最初の文字列を連結することによって、URLを構築しています。 document.location.hrefを設定すると、そのURLにブラウザが誘導されます。

関連する問題