js判斷鼠標單擊或者雙擊事件「js雙擊事件參數」

大家好,我是前端菜鳥李不白,今天帶給大家的是js中,一個小小的點擊案例。

通過每個盒子的點擊去完成與用戶的交互。

那麼如何去做呢?

首先我們先寫一個div,給它一些樣式,方便我們觀察。

JavaScript初學者,一個小小的點擊案例。

寫完之後效果如下圖。

JavaScript初學者,一個小小的點擊案例。

接下來要做什麼呢?要做的是,在我們點擊這個高為200的盒子之後,讓它變成高為500的盒子。再次點擊之後,再讓它回到兩百。

怎麼做呢?看代碼。

JavaScript初學者,一個小小的點擊案例。

首先先來一個script標籤。

再寫一行box.onclick=function(){ },這裡給盒子起的ID名可以直接拿過來用,而不用來一遍聲明。意思是,當我盒子點擊後,我需要做什麼?需要做的那個事的行為,就要放在中括號里。

那麼我們要幹什麼事呢?讓這個盒子第一次點擊,由原來的高200,長高到500。第二次點擊由高500,減肥到原來的200。

這裡需要用到什麼?需要用到一個判斷語句。

if(){ }else{ }

這行代碼如上圖所示,寫在function那個中括號里。

那麼怎麼判斷呢?如果,我點擊之前高是200,那麼點擊之後它就發生改變。

box.style.height=“500px”;

發生點擊後,讓那個盒子的高度樣式改變,變成500。如果,我點擊之前它不是200,那麼點擊之後就要變成200。

這行代碼是在else的中括號里,這樣寫。

box.style.height=“200px”;如圖。

JavaScript初學者,一個小小的點擊案例。

到了這一步,按照以上寫完的代碼走,你會發現點擊沒反應。因為啥呢?因為我根本不知道原來的盒子是什麼樣子,我無法去做出判斷,執行我的改變。

那麼我們這裡要用到布爾值,因為我們只要最終的兩個結果,而布爾值就是兩個結果,一個ture,一個false。

我們需要添加這樣一行代碼。let libubai=true;

因為這個頁面每一次刷新出來高都是200,那麼我就可以用這行代碼,聲明一個變量。默認這個值是200。再把這個變量名,添加到if的小括號里去。

然後你點擊的時候它會判斷,哦,這已經是二百了,那麼我要執行第一個方案,當它是200的時候,我要讓它變高,變成五百。如下圖。

JavaScript初學者,一個小小的點擊案例。

這時候你會發現,再次點擊盒子是不變的,盒子沒有從500變成200。為什麼?雖然盒子變成500了,但是它沒有感受到盒子已經是500的這個條件。那麼我們需要添加一行代碼了,告訴它盒子是500了。

在box.style.height=“500”;這行代碼下面加一行代碼。

libubai=false。

因為最開始默認變量值是200。這裡我點擊一次改變了高度,所以變量值從原來的ture,變成了false。因為我們只有兩個高度,所以這個false代表了五百的高度。

也就是說我點擊了一次,高度變成了500,變量值也要跟上是500。同理,當我再次點擊的時候,判斷一次這個盒子,它是200嗎?如果是,就變500。很顯然它不是,那麼執行第二套方案,它是500嗎?是,那就變成200。

好了,這裡我變了,那個變量值要不要跟上?當然要跟上。已經變成了200,那麼200又是默認值,默認值為ture。所以,在else里的box.style.height=“200px”;的下一行這麼寫。

libubai=true。

以上就是這個小案例的所有思路和步驟,可能解說不是那麼完美,我會努力完善自己的。

然後我個人理解,這個if和else中括號里的這兩行代碼libubai=ture,libubai=false,作用是啥呢?

好有一比,這個判斷語句是個盲人,看不到外形,只能通過語言了解狀態。好了,我外形改變了,你卻看不到我的帥,那怎麼可以啊?我當然要親口告訴你了,我很帥,然後你才知道我很帥嘛!hiahiahia。

好了,這期內容到此結束,我們下期見,拜拜!!!

PS:請自動忽略倒數第二第三自然段……

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/273203.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-17 14:04
下一篇 2024-12-17 14:04

相關推薦

發表回復

登錄後才能評論