jQuery實(shí)現(xiàn)鼠標(biāo)經(jīng)過購物車出現(xiàn)下拉框代碼(推薦)
來源:易賢網(wǎng) 閱讀:865 次 日期:2016-07-29 15:58:26
溫馨提示:易賢網(wǎng)小編為您整理了“jQuery實(shí)現(xiàn)鼠標(biāo)經(jīng)過購物車出現(xiàn)下拉框代碼(推薦)”,方便廣大網(wǎng)友查閱!

這一段時(shí)間在學(xué)習(xí)web前端,最近學(xué)了jQuery庫,深感其強(qiáng)大,下面通過寫購物車的下拉框做法,把自己的理解和大家交流一下,歡迎各位大神指點(diǎn)指正,廢話不多說,開始正題:

購物車html:

<!-- 購物車 start -->

<div class="shopping" id="shopping-box">

<a href="" id="shoptext"><i class="iconfont"></i> 購物車(0)</a>

<!-- 購物車下拉框 start-->

<div class="shop" id="shop-content">

購物車中還沒有商品,趕緊選購吧!

</div>

<!-- 購物車下拉框 end-->

</div>

<!-- 購物車 end -->

剛開始學(xué)習(xí)原生js時(shí)候的寫法:

//購物車下拉框 start

var shoppingBoxNode = document.getElementById("shopping-box");

var shopContentNode = document.getElementById("shop-content");

var shoptext = document.getElementById("shoptext");

shoppingBoxNode.onmouseenter = function(){

shoptext.style.background = "#fff";

shoptext.style.color = "#ff6700";

shopContentNode.style.display = "block";

console.log("over");

};

shoppingBoxNode.onmouseleave = function(){

shoptext.style.background = "";

shoptext.style.color = "";

shopContentNode.style.display = "";

console.log("out");

};

//購物車下拉框 end

感覺很麻煩,而且還不好理解,下面用jQuery來寫的:

//購物車 下拉

var interval1;

$("#shopping-box").mouseenter(function(){

clearTimeout(interval1);

$(this).children().first().css({"color":"#ff6700","background":"#fff"});

$(this).children().last().stop(true,true).slideDown();

}).mouseleave(function(){

var self = $(this);

interval1 = setTimeout(function(){

self.children().first().removeAttr("style");

},700);

$(this).children().last().delay(200).slideUp();

});

這個(gè)看著就干凈利落的多,相對(duì)的減少了代碼量,這里面事件使用應(yīng)用鏈的寫法,而且jQuery的方法的兼容問題基本上在其內(nèi)被都已經(jīng)被解決了,這點(diǎn)真是讓前端的工作量減少了很多,用原生的時(shí)候調(diào)兼容調(diào)的頭都快炸了(大家都懂的。。。),里面用到了jQuery中的延時(shí)delay和停止動(dòng)畫stop來處理(很好用的兩個(gè)函數(shù)),當(dāng)鼠標(biāo)移動(dòng)過快出現(xiàn)的問題

這里面事件的寫法當(dāng)然也可以用下面的方法(on也可以用bind來替換):

//購物車 下拉

var interval1;

$("#shopping-box").on({

mouseenter:function(){

},

mouseleave:function(){

}

});

以上所述是小編給大家介紹的jQuery實(shí)現(xiàn)鼠標(biāo)經(jīng)過購物車出現(xiàn)下拉框 ,希望對(duì)大家有所幫助

更多信息請(qǐng)查看網(wǎng)絡(luò)編程
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

2025國(guó)考·省考課程試聽報(bào)名

  • 報(bào)班類型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 新媒體/短視頻平臺(tái) | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)