国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

JS的鼠標監聽mouseup鼠標抬起失效原因及解決

瀏覽:194日期:2022-06-09 14:39:31
目錄
  • 一、起因及解決
  • 解決:
  • 總結:

一、起因及解決

由于很少使用除了click的監聽事件,今天在使用mouseup時遇到一個坑,找了好久的bug。事情是這樣的,我在寫一個表情框,為了實現鼠標拖動表情框時,移動到相應的位置。所以配合使用到了mousedown和mouseup和mosemove。

1.mosedown: 用于鼠標按下進行選中該表情區域為可拖動;

2.mosemove:鼠標移動時,判斷表情區域是否可拖動,,若可拖動,則開始允許拖動;

3.mouseup: 鼠標抬起該表情區域不可拖動;

但是我遇到的問題是,鼠標按下時,該表情區域可以拖動,但是鼠標松開時,表情區域還是可以根據我的鼠標位置進行拖動。

如下:

![上傳中...]()

可以看到,我鼠標松開時,本來不可以移動的,但是現在卻可以移動,后來研究了一下,發現表情區域怎么被我選中變色了,然后查了一下使用css禁止選中,就正常了。如下:

解決:

// 表情盒子樣式  .emojiBox {    -webkit-user-select: none;    -moz-user-select: none;    -o-user-select: none;    user-select: none;}

總結:

其實mouseup并沒有失效,而是你拖動時,鼠標選中了其他的元素,其實的話,鼠標即使松開,瀏覽器內部還是認為用戶在復制文字,鼠標還是按下的狀態,所以不會觸發mouseup事件。

以上就是JS的鼠標監聽:mouseup(鼠標抬起)失效的詳細內容,更多關于JS的鼠標監聽:mouseup(鼠標抬起)失效的資料請關注其它相關文章!

標簽: JavaScript
主站蜘蛛池模板: 牟定县| 克东县| 肇东市| 扎赉特旗| 新河县| 秦皇岛市| 天津市| 邵阳市| 平遥县| 建宁县| 海林市| 六盘水市| 喀什市| 新津县| 美姑县| 洪湖市| 潼南县| 洛宁县| 漳平市| 修水县| 大庆市| 南通市| 陆川县| 高雄县| 临朐县| 监利县| 进贤县| 鄯善县| 大连市| 海盐县| 海南省| 诸暨市| 尖扎县| 聊城市| 塔河县| 青川县| 定陶县| 广南县| 清徐县| 格尔木市| 广州市|