亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

表單驗證失敗提示方案(自用)

CoyPan / 3649人閱讀

摘要:方案動態(tài)計算定位,于失敗項附近,并定時消失,多個提示一同顯示。遇到問題當表單處于中,并且表單高度大于高度,驗證失敗項又剛好在被隱藏的部分,需要對這部分提示做特殊處理,暫且處理為不顯示這部分提示。

方案

動態(tài)計算定位,fixed于失敗項附近,并定時消失,多個提示一同顯示。

遇到問題

當表單處于dialog中,并且表單高度大于dialog高度,驗證失敗項又剛好在被overflow隱藏的部分,需要對這部分提示做特殊處理,暫且處理為不顯示這部分提示。問題如圖:

解決問題

判斷是否處在dialog中

判斷驗證失敗項是否在overflow隱藏部分

判斷是否處在dialog中
function nodeParents (elm, cls) {
  let parent = elm.parentNode
  while (parent && !parent.classList.contains(cls)) {
    parent = parent.parentNode
  }
  return parent
}
判斷驗證失敗項是否在overflow隱藏部分
function visibleInDialog (elm, parent) {
  const rect1 = elm.getBoundingClientRect()
  const rect2 = parent.getBoundingClientRect()
  return rect1.bottom < rect2.bottom && rect1.top > rect2.top
}
最終
const dialog = nodeParents(elm, "dialog")
if (dialog && visibleInDialog(elm, dialog) || !dialog) {
    errorTip(tip)
}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/99945.html

相關(guān)文章

  • H5: 表單驗證失敗提示

    摘要:前言前端的童鞋在寫頁面時都不可避免的總會踩到表單驗證這個坑這時候我們就要跪了因為要寫一堆來檢查但是自從出現(xiàn)后很多常見的表達驗證它都已經(jīng)幫我們實現(xiàn)了讓我們減輕了很多負擔就好像下面的郵箱地址驗證郵箱郵箱驗證是自身支持的但是我們要驗證的場景和情 前言 ????前端的童鞋在寫頁面時, 都不可避免的總會踩到表單驗證這個坑. 這時候, 我們就要跪了, 因為要寫一堆js來檢查. 但是自從H5出現(xiàn)后,...

    callmewhy 評論0 收藏0
  • vuelidate 對于vueJs2.0的驗證解決方案

    摘要:介紹在后端項目里比如我們的框架對于表單驗證有自己的一套機制他將驗證集成在我們只需要在我們的方法中依賴注入我們自己實例化后的驗證類當然也可以直接去在方法里去驗證表單數(shù)據(jù)而在我們的前端的項目里也就是在我們的項目里也有比較好的驗證解決方案也就是這 介紹 在后端項目里 比如我們的Laravel框架 對于表單驗證有自己的一套validation機制 他將驗證集成在FormRequest 我們只...

    zhangwang 評論0 收藏0
  • HTML5中的表單

    摘要:注意約束驗證不支持表單中的元素若想基于表單的驗證結(jié)果來改變按鈕的樣式,可以使用偽類。約束驗證的語法下列語法中的條目用于為表單數(shù)據(jù)指定約束。這些特性指定了當表單提交時不做驗證。在表單相關(guān)元素上屬性,如果元素的約束沒有被符合則值為。 相對于 HTML4 來說,HTML5中的元素與特性提供更大程度上的語義標記,同時還刪除了大量在 HTML4 中因為腳本與樣式緣故而存在的冗余元素。通過讓表單在...

    Pocher 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<