Neidio i'r cynnwys
SilktideCymorth

Nodi gwallau

Mae Silktide yn archwilio meysydd ffurflen gorfodol sy'n ymddangos fel petaent yn defnyddio dilysu personol yn lle gwiriadau adeiledig y porwr, ac yn rhybuddio pan nad oes ffordd amlwg i'r neges wall gyrraedd pobl sy'n defnyddio technoleg gynorthwyol.

Pam mae hyn yn bwysig

Pan fydd ffurflen yn gwrthod ateb annilys, bydd defnyddwyr sy'n gallu gweld fel arfer yn gweld amlinelliad coch neu neges ger y maes. Nid yw defnyddiwr yn cael dim o hynny oni bai bod y dudalen yn datgelu'r gwall yn y cod: mae'r ffurflen yn gwrthod cael ei chyflwyno, heb esboniad o beth aeth o'i le na ble. Y canlyniad yw ffurflen sy'n atal rhai ymwelwyr yn dawel.

Mae porwyr yn cyhoeddi eu negeseuon dilysu adeiledig eu hunain yn awtomatig. Mae'r risg yn ymddangos pan fydd tudalen yn diffodd hynny neu'n ei ddisodli â'i dilysiad ei hun, ac yn anghofio cysylltu'r un newydd ar gyfer .

Sut i'w drwsio

Rhowch lwybr rhaglennol i bob maes sydd wedi'i ddilysu'n bersonol ar gyfer ei neges wall, gan ddefnyddio :

<!-- Problem: custom validation with no accessible error channel -->
<form novalidate>
  <input type="text" required>
  <span class="error">Enter your name</span>
</form>

<!-- Fix: the field points at its error message -->
<form novalidate>
  <input type="text" required aria-describedby="name-error">
  <span id="name-error" class="error">Enter your name</span>
</form>

Mae unrhyw un o'r rhain yn bodloni'r gwiriad:

  1. aria-errormessage ar y maes, sy'n pwyntio at yr elfen rydych yn ei llenwi â thestun y gwall (gosodwch aria-invalid="true" pan fydd y gwall yn ymddangos).
  2. aria-describedby ar y maes, sy'n pwyntio at yr elfen neges.
  3. y tu mewn i'r ffurflen - elfen â role="alert", role="status", neu aria-live - y mae eich dilysiad yn ysgrifennu testun gwall iddi.

Fel arall, tynnwch yr addasiad a gadewch i ddilysiad brodorol y porwr adrodd am wallau, sydd yn hygyrch yn ddiofyn.

Sut mae Silktide yn profi hyn

  1. Dod o hyd i feysydd gorfodol gweladwy - mewnbynnau, ardaloedd testun, a dewislenni dewis sydd wedi'u marcio â required neu aria-required="true".
  2. Cadw dim ond y meysydd sydd â thystiolaeth bod dilysiad brodorol y porwr yn cael ei osgoi neu ei ddisodli: mae gan y ffurflen novalidate, mae gan reolydd cyflwyno formnovalidate, mae'r maes wedi'i farcio ag aria-invalid, mae'n defnyddio aria-required heb y briodwedd frodorol required, neu mae gan y maes neu'r ffurflen awgrymiadau dilysu personol (megis priodweddau sy'n ymwneud â gwallau neu gynwysyddion negeseuon gwall).
  3. Ar gyfer pob maes o'r fath, chwilio am unrhyw sianel wall hygyrch: cyfeiriad aria-errormessage dilys, cyfeiriad aria-describedby dilys, neu ranbarth byw o fewn y ffurflen.
  4. Rhybuddio am feysydd nad oes ganddynt yr un o'r rhain. Rhybudd yw hwn yn hytrach na methiant a gadarnhawyd, oherwydd ni ellir arsylwi ymddygiad dilysu wrth redeg yn llawn o god y dudalen.

Datrys problemau

Mae fy ngwallau yn cael eu cyhoeddi'n gywir

Mae'r gwiriad yn chwilio am y strwythur sy'n gwneud cyhoeddiadau'n bosibl, nid y cyhoeddiad ei hun. Os yw eich fframwaith yn mewnosod rhanbarth byw neu'r cyfeiriadau ARIA dim ond pan fydd gwall yn digwydd, nid yw'r dudalen wedi'i llwytho yn dangos sianel ac mae'r maes yn cael ei farcio. Mae ychwanegu'r elfen neges (wag) a'r cyfeiriad ymlaen llaw yn datrys hyn, ac mae hefyd yn fwy cadarn.

Nid yw'r elfen neges y cyfeirir ati yn bodoli eto

Rhaid i gyfeiriadau bwyntio at elfennau sy'n bodoli yn y dudalen. Mae aria-describedby sy'n pwyntio at id a grëir yn ddiweddarach yn unig yn cyfrif fel dim sianel.

Dysgu mwy

Diweddarwyd ddiwethaf

A oedd y dudalen hon yn ddefnyddiol?