国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

Jquery 快速構(gòu)建可拖曳的購物車DragDrop

2024-05-06 15:45:35
字體:
供稿:網(wǎng)友

我們開發(fā)網(wǎng)站的時(shí)候,都希望自己開發(fā)的功能得到很好的用戶體驗(yàn),但是要實(shí)現(xiàn)這個(gè)效果卻不是一次兩次就能解決的呢,今天錯新技術(shù)頻道小編主要給大家介紹Jquery 快速構(gòu)建可拖曳的購物車DragDrop,讓我們一起來看看這些細(xì)節(jié)吧!

這樣一來,購買者只需要把自己感興趣的商品拖曳到自己的購物車中,也可以從購物車中刪除商品 同時(shí)更新購物車的總體價(jià)格和數(shù)量。
那咱們就開始實(shí)例吧,本實(shí)例并沒有鏈接數(shù)據(jù)庫讀取數(shù)據(jù)來初始化Products,而是創(chuàng)建了一些虛擬的商品如下:
1、 創(chuàng)建Product實(shí)體類

?

public class Product
{
public string Code { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public double Price { get; set; }
}
[code]
2、 構(gòu)建商品List<Product>
[code]
public class Product
{
public string Code { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public double Price { get; set; }
}


3、創(chuàng)建DataList并綁定List<Product>

?

?

?


<asp:DataList ID="dlProducts" RepeatColumns="3"
RepeatDirection="Horizontal" runat="server">
<ItemTemplate>
<div class="productItemStyle" price='<%# Eval("Price") %>'
code='<%# Eval("Code") %>' id='item_<%# Container.ItemIndex + 1 %>'>
<li>
<%# Eval("Code") %>
</li>
<li>
<%# Eval("Name") %>
</li>
<li>
<%# Eval("Description") %>
</li>
<li>
$<%# Eval("Price") %>
</li>
</div>
</ItemTemplate>
</asp:DataList>
private void BindData()
{
var products = GetProducts();
dlProducts.DataSource = products;
dlProducts.DataBind();
}


productItemStyle 樣式名稱
Container.ItemIndex動態(tài)生成連續(xù)的商品編號

4、 生成Products Div Draggable
下載最新的Jquery JS文件及其UI文件:

?

?

?


<script language="javascript" type="text/javascript" src="jquery-1.2.6.min.js"></script>
<script language="javascript" type="text/javascript"
src="jquery-ui-personalized-1.6rc4.min.js"></script>


頁面初始化時(shí)生成Div Draggable

?

?

?


$(document).ready(function() {
$(".productItemStyle").draggable({ helper: "clone", opacity: "0.5" });
)};


5、創(chuàng)建一個(gè)DropZone
DropZones 是購物車區(qū)域

?

?

?


$(".dropZone").droppable(
{
accept: ".productItemStyle",
hoverClass: "dropHover",
drop: function(ev, ui) {
var droppedItem = ui.draggable.clone().addClass("droppedItemStyle");
var productCode = droppedItem[0].attributes["code"].nodeValue;
var productPrice =
getFormattedPrice(droppedItem[0].attributes["price"].nodeValue);
var removeLink = document.createElement("a");
removeLink.innerHTML = "Remove";
removeLink.className = "deleteLink";
removeLink.href = "#";
removeLink.onclick = function()
{
$(".dropZone").children().remove("#" + droppedItem[0].id);
updateTotal(productPrice * (-1));
}
droppedItem[0].appendChild(removeLink);
$(this).append(droppedItem);
updateTotal(productPrice);
}
}
);


Accept參數(shù):展示Class= “productItemStyle”的Div
hoverClass參數(shù):當(dāng)有Product放到DropZone時(shí)的樣式
drop函數(shù):當(dāng)Product拖放到DropZone時(shí)出發(fā)的函數(shù),此函數(shù)主要做了一個(gè)Product Item的Clone,價(jià)格的計(jì)算、添加Remove按鈕以及到點(diǎn)擊Remove按鈕時(shí)所觸發(fā)的事件。
價(jià)格的計(jì)算updateTotal()函數(shù)

?

?

?


// update the total!
function updateTotal(price) {
total += parseFloat(price);
$("#total").html(total.toFixed(2));
$(".shoppingCartTotal").effect("bounce");
}


最終效果如下圖:
以上就是關(guān)于Jquery 快速構(gòu)建可拖曳的購物車DragDrop,你學(xué)會了嗎?如果你還想了解更多的專業(yè)知識,建議你來js.VeVb.com進(jìn)行學(xué)習(xí)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 吉木萨尔县| 石林| 本溪| 望都县| 汶川县| 遂昌县| 客服| 噶尔县| 文安县| 定西市| 晋江市| 甘泉县| 玉田县| 闽侯县| 奇台县| 二连浩特市| 天祝| 渝北区| 石柱| 奉贤区| 涿州市| 满洲里市| 长宁区| 定兴县| 上虞市| 甘泉县| 高清| 遂宁市| 奎屯市| 大名县| 五台县| 漳浦县| 阿拉善左旗| 六安市| 盐津县| 治多县| 株洲市| 望奎县| 安平县| 乌拉特后旗| 原阳县|