ਮਲਟੀ-ਸਟੈਪ ਰੂਪਾਂ ਨੂੰ ਏਆਰਆਈਏ-ਲਾਈਵ ਦੇ ਨਾਲ ਵਧੇਰੇ ਪਹੁੰਚਯੋਗ ਬਣਾਉਣਾ
ਇੱਕ ਸਹਿਜ ਅਤੇ ਪਹੁੰਚਯੋਗ ਮਲਟੀ-ਸਟੈਪ ਫਾਰਮ ਬਣਾਉਣਾ ਇੱਕ ਸੰਮਲਿਤ ਉਪਭੋਗਤਾ ਦੇ ਤਜਰਬੇ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਮਹੱਤਵਪੂਰਨ ਹੈ. ਡਿਵੈਲਪਰ ਅਕਸਰ ਸਕ੍ਰੀਨ ਰੀਡਰ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਸੁਰੱਖਿਅਤ ਰੱਖਣ ਵਾਲੇ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਜਾਣੂ ਕਰਵਾਉਣ ਲਈ ਚੁਣੌਤੀਆਂ ਦਾ ਸਾਹਮਣਾ ਕਰਦੇ ਹਨ ਜਿਵੇਂ ਕਿ ਉਹ ਆਰਜੀਕਲ ਬਦਲਣ ਵਾਲੇ ਕਦਮਾਂ ਦੁਆਰਾ ਨੈਵੀਗੇਟ ਕਰਦੇ ਹਨ. ਇਕ ਕੁੰਜੀ ਦਾ ਹੱਲ ਜਵੇਰਾ ਏਰੀਆ-ਲਾਈਵ ਖੇਤਰ ਕਦਮ ਤਬਦੀਲੀਆਂ ਦੀ ਘੋਸ਼ਣਾ ਕਰਨ ਲਈ, ਪਰ ਲਾਗੂ ਕਰਨ ਦੀ ਪਹੁੰਚ ਐਕਸੈਸ ਯੋਗਤਾ ਨੂੰ ਮਹੱਤਵਪੂਰਨ ਪ੍ਰਭਾਵ ਪਾ ਸਕਦੀ ਹੈ. 🎯
ਕਲਪਨਾ ਕਰੋ ਕਿ ਇੱਕ ਸਕ੍ਰੀਨ ਰੀਡਰ ਤੇ ਇੱਕ ਫਾਰਮ ਨੂੰ ਕਈ ਕਦਮਾਂ ਵਿੱਚ ਵੰਡਣ ਲਈ ਇੱਕ ਫਾਰਮ ਨੂੰ ਪੂਰਾ ਕਰਨ ਲਈ. ਜੇ ਕਦਮ ਤਬਦੀਲੀ ਸਹੀ devidented ੰਗ ਨਾਲ ਨਹੀਂ ਮੰਨੀ ਜਾਂਦੀ, ਤਾਂ ਉਹ ਸ਼ਾਇਦ ਉਨ੍ਹਾਂ ਦੀ ਤਰੱਕੀ ਬਾਰੇ ਯਕੀਨ ਨਹੀਂ ਸਮਝ ਸਕਦੇ. ਇਸ ਲਈ ਏਰੀਆ-ਲਾਈਵ ਸਮੱਗਰੀ ਨੂੰ ਅਪਡੇਟ ਕਰਨ ਲਈ ਸਹੀ method ੰਗ ਦੀ ਚੋਣ ਕਰਨਾ ਜ਼ਰੂਰੀ ਹੈ. ਕੀ ਅਪਡੇਟ ਰੂਟ ਲੈਵਲ ਤੇ ਵਾਪਰਨਾ ਚਾਹੀਦਾ ਹੈ, ਜਾਂ ਹਰ ਕਦਮ ਨੂੰ ਆਪਣਾ ਸਿੱਧਾ ਖੇਤਰ ਚੁੱਕਣਾ ਚਾਹੀਦਾ ਹੈ? 🤔
ਇਸ ਲੇਖ ਵਿਚ, ਅਸੀਂ ਲਾਗੂ ਕਰਨ ਲਈ ਸਭ ਤੋਂ ਵਧੀਆ ਅਭਿਆਸਾਂ ਦੀ ਪੜਚੋਲ ਕਰਾਂਗੇ ਏਰੀਆ-ਲਾਈਵ ਜਾਵਾ ਸਕ੍ਰਿਪਟ-ਸੰਚਾਲਿਤ ਮਲਟੀ-ਸਟਾਰਮ ਰੂਪਾਂ ਵਿੱਚ ਕਦਮ ਸੰਕੇਤਾਂ. ਅਸੀਂ ਦੋ ਆਮ ਤਕਨੀਕਾਂ ਦੀ ਤੁਲਨਾ ਕਰਾਂਗੇ: ਹਰ ਪੜਾਅ ਦੇ ਟੈਂਪਲੇਟ ਦੇ ਅੰਦਰ-ਅੰਦਰ ਲਾਈਵ ਖੇਤਰ ਨੂੰ ਰੂਟ ਬਨਾਮ ਏਮਬੇਡਿੰਗ ਕਰਨ ਵਾਲੇ ਲਾਈਵ ਖੇਤਰਾਂ ਨੂੰ ਅਪਡੇਟ ਕਰਨਾ. ਹਰ ਪਹੁੰਚ ਦੀਆਂ ਇਸ ਦੀਆਂ ਤਾਕਤਾਂ ਅਤੇ ਟ੍ਰੇਡ-ਆਫ ਹਨ.
ਅੰਤ ਤੱਕ, ਤੁਹਾਡੇ ਕੋਲ ਸਾਰੇ ਉਪਭੋਗਤਾਵਾਂ ਲਈ ਪਹੁੰਚਯੋਗ ਅਤੇ ਨਿਰਵਿਘਨ ਫਾਰਮ ਤਜਰਬੇ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਤੁਹਾਡੇ ਤੋਂ ਪ੍ਰਭਾਵਸ਼ਾਲੀ in ੰਗ ਦੀ ਸਪਸ਼ਟ ਸਮਝ ਹੋਵੇਗੀ. ਚਲੋ ਵੇਰਵਿਆਂ ਵਿੱਚ ਡੁੱਬੋ ਅਤੇ ਵੇਖੀਏ ਕਿ ਕਿਹੜਾ ਪਹੁੰਚ ਵਧੀਆ ਕੰਮ ਕਰਦਾ ਹੈ! 🚀
ਕਮਾਂਡ | ਵਰਤੋਂ ਦੀ ਉਦਾਹਰਣ |
---|---|
aria-live="polite" | ਉਪਭੋਗਤਾ ਦੀ ਮੌਜੂਦਾ ਗਤੀਵਿਧੀ ਵਿੱਚ ਰੁਕਾਵਟ ਦੇ ਬਿਨਾਂ ਡਾਇਨਾਮਿਕ ਸਮਗਰੀ ਅਪਡੇਟਾਂ ਬਾਰੇ ਸਕ੍ਰੀਨ ਰੀਡਰਾਂ ਨੂੰ ਸੂਚਿਤ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ. |
<template> | HTML ਦੇ ਇੱਕ ਮੁੜ ਵਰਤੋਂ ਯੋਗ ਬਲਾਕ ਨੂੰ ਪ੍ਰਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ ਜੋ ਕਿ ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਰਾਹੀਂ ਡੋਮ ਵਿੱਚ ਪਾਈਆਂ ਜਾਣ ਤੱਕ ਨਾ-ਸਰਗਰਮ ਰਹਿੰਦੀ ਹੈ. |
document.getElementById("elementID").classList.add("hidden") | ਆਰਜੀ ਤੌਰ 'ਤੇ ਇਕ ਖ਼ਾਸ ਤੱਤ ਨੂੰ ਲੁਕਾਉਣ ਲਈ ਇੱਕ ਵਿਸ਼ੇਸ਼ ਤੱਤ ਨੂੰ ਜੋੜਦਾ ਹੈ. |
document.getElementById("elementID").innerHTML = template.innerHTML | ਇੱਕ ਟੈਂਪਲੇਟ ਐਲੀਮੈਂਟਸ ਦੀ ਸਮੱਗਰੀ ਨੂੰ ਕਿਸੇ ਹੋਰ ਤੱਤ ਵਿੱਚ ਟੀਕੇ ਲਗਾਉਂਦਾ ਹੈ, ਪ੍ਰਭਾਵਸ਼ਾਲੀ .ੰਗ ਨਾਲ ਕਦਮ ਆਰਜੀ ਤੌਰ ਤੇ. |
document.getElementById("step-announcer").textContent | ਮੌਜੂਦਾ ਪੜਾਅ ਨੂੰ ਬਿਹਤਰ ਬਣਾਉਣ, ਮੌਜੂਦਾ ਪਗ ਨੂੰ ਸੁਧਾਰਨ ਲਈ ਨਵੇਂ ਪਾਠ ਨਾਲ ਲਾਈਵ ਖੇਤਰ ਨੂੰ ਅਪਡੇਟ ਕਰਦਾ ਹੈ. |
classList.remove("hidden") | CSS ਕਲਾਸ ਨੂੰ ਹਟਾਉਂਦਾ ਹੈ ਜੋ ਇਕ ਤੱਤ ਨੂੰ ਲੁਕਾਉਂਦਾ ਹੈ, ਅਗਲਾ ਫਾਰਮ ਕਦਮ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ. |
alert("Form submitted!") | ਫਾਰਮ ਅਧੀਨਗੀ ਨੂੰ ਰੋਕਣ ਲਈ ਇੱਕ ਪੌਪ-ਅਪ ਸੁਨੇਹਾ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ ਉਪਭੋਗਤਾ ਦੀ ਫੀਡਬੈਕ ਪ੍ਰਦਾਨ ਕਰਨ ਦਾ ਮੁ basic ਲੇ way ੰਗ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦਾ ਹੈ. |
onclick="nextStep(1)" | ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਫੰਕਸ਼ਨ ਨੂੰ ਇੱਕ ਬਟਨ ਵਿੱਚ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ, ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਆਰਜੀ ਤੌਰ ਤੇ ਆਰਜੀ ਵਿੱਚ ਤਰੱਕੀ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ. |
viewport meta tag | ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਦਾ ਹੈ ਕਿ ਫਾਰਮ ਪੇਜ ਦੇ ਸ਼ੁਰੂਆਤੀ ਜ਼ੂਮ ਲੈਵਲ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਕੇ ਵੱਖਰੇ ਸਕ੍ਰੀਨ ਦੇ ਅਕਾਰ 'ਤੇ ਜਵਾਬਦੇਹ ਹੈ. |
loadStep(1); | ਜਦੋਂ ਪੰਨੇ ਦੀ ਸ਼ੁਰੂਆਤ ਵਿੱਚ, ਤਾਂ ਆਪਣੇ ਆਪ ਫਾਰਮ ਦਾ ਪਹਿਲਾ ਕਦਮ ਲੋਡ ਕਰਦਾ ਹੈ, ਉਪਭੋਗਤਾ ਅਨੁਭਵ ਨੂੰ ਸੁਧਾਰਨਾ. |
ਏਆਰਆਈਏ-ਲਾਈਵ ਦੇ ਨਾਲ ਮਲਟੀ-ਸਟਿਮ ਫਾਰਮ ਵਿੱਚ ਅਸ ਪਹੁੰਚਦਾਇਕ ਬਣਾਉਣਾ ਯਕੀਨੀ ਬਣਾਉਣਾ
ਜਦੋਂ ਵਿਕਾਸ ਕਰਨਾ ਏ ਮਲਟੀ-ਸਟੈਪ ਫਾਰਮ, ਸਾਰੇ ਉਪਭੋਗਤਾਵਾਂ ਲਈ ਪਹੁੰਚ ਦੀ ਸਿਫਾਰਸ਼ ਕਰਨਾ, ਸਮੇਤ ਸਕ੍ਰੀਨ ਰੀਡਰਕਾਂ 'ਤੇ ਨਿਰਭਰ ਕਰਨ ਵਾਲੇ, ਜ਼ਰੂਰੀ ਹੈ. ਉਪਰੋਕਤ ਬਣਾਏ ਗਏ ਸਕ੍ਰਿਪਟਾਂ ਇਸ ਨੂੰ ਵਰਤ ਕੇ ਨਜਿੱਠਦੀਆਂ ਹਨ ਏਰੀਆ-ਲਾਈਵ ਖੇਤਰ ਨੂੰ ਆਪਣੀ ਤਰੱਕੀ 'ਤੇ ਆਰਜੀ ਤੌਰ' ਤੇ ਅਪਡੇਟ ਕਰਨ ਲਈ. ਪਹਿਲੀ ਪਹੁੰਚ ਜੜ ਦੇ ਪੱਧਰ 'ਤੇ ਇਕੋ ਐਰ ਆਈਏ-ਲਾਈਵ ਤੱਤ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ, ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਨਾਲ ਆਪਣੀ ਸਮਗਰੀ ਨੂੰ ਅਪਡੇਟ ਕਰਨਾ ਜਦੋਂ ਵੀ ਉਪਭੋਗਤਾ ਅਗਲੇ ਪਗ ਤੇ ਜਾਂਦਾ ਹੈ. ਇਹ ਵਿਧੀ ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਦੀ ਹੈ ਕਿ ਤਜ਼ਰਬੇ ਨੂੰ ਨਿਰਵਿਘਨ ਰੱਖਣ ਵੇਲੇ ਲਾਈਵ ਖੇਤਰਾਂ ਵਿੱਚ ਰਿਡੰਡੈਂਸੀ ਤੋਂ ਬਚਣ ਲਈ, ਲਾਈਵ ਖੇਤਰਾਂ ਵਿੱਚ ਬੇਲੋੜੀ ਤੋਂ ਪਰਹੇਜ਼ ਕਰਨ ਤੋਂ ਬਚਣ ਲਈ, ਲਾਈਵ ਖੇਤਰਾਂ ਵਿੱਚ ਬੇਲੋੜੀ ਤੋਂ ਪਰਹੇਜ਼ ਕਰਨ ਦੇ ਬਾਅਦ.
ਦੂਜੀ ਪਹੁੰਚ ਏਆਰਆਈਏ ਨੂੰ ਐਰਿਯਾ ਦੇ ਸਿੱਧੇ ਹਰੇਕ ਟੈਂਪਲੇਟ ਦੇ ਅੰਦਰ ਲਾਈਵ, ਹਰੇਕ ਕਦਮ ਦੇ ਆਪਣੇ ਐਲਾਨ ਦੀ ਆਪਣੀ ਘੋਸ਼ਣਾ ਹੁੰਦੀ ਹੈ ਜਦੋਂ ਪ੍ਰਦਰਸ਼ਿਤ ਹੁੰਦਾ ਹੈ. ਇਹ ਵਿਧੀ ਲਾਭਕਾਰੀ ਹੁੰਦੀ ਹੈ ਜਦੋਂ ਕਦਮਾਂ ਵਿੱਚ ਵੱਖ-ਵੱਖ ਪ੍ਰਸੰਗਿਕ ਜਾਣਕਾਰੀ ਹੁੰਦੀ ਹੈ ਜਿਸ ਨੂੰ ਤੁਰੰਤ ਲਾਗੂ ਕਰਨ ਦੀ ਜ਼ਰੂਰਤ ਹੁੰਦੀ ਹੈ. ਉਦਾਹਰਣ ਦੇ ਲਈ, ਜੇ ਇੱਕ ਰੂਪ ਕਦਮ ਉਹਨਾਂ ਵਿੱਚ ਨਿੱਜੀ ਵੇਰਵੇ ਵਿੱਚ ਦਾਖਲ ਹੋਣਾ ਸ਼ਾਮਲ ਹੈ, ਤਾਂ ਲਾਅ ਐਲਾਨ ਵਿੱਚ ਵਿਸ਼ੇਸ਼ ਮਾਰਗ ਦਰਸ਼ਨ ਸ਼ਾਮਲ ਹੋ ਸਕਦੀ ਹੈ, ਜਿਵੇਂ ਕਿ "ਕਦਮ 2: ਕਿਰਪਾ ਕਰਕੇ ਆਪਣੀ ਈਮੇਲ ਦਾਖਲ ਕਰੋ." ਇਹ ਵਧੇਰੇ ured ਾਂਚਾਗਤ ਅਪਡੇਟਾਂ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਪਰ ਓਵਰਲੈਪਿੰਗ ਘੋਸ਼ਣਾ ਤੋਂ ਬਚਣ ਲਈ ਧਿਆਨ ਨਾਲ ਲਾਗੂ ਕਰਨ ਦੀ ਜ਼ਰੂਰਤ ਹੈ.
ਦੋਵਾਂ ਪਹੁੰਚ ਵਿੱਚ ਜਾਵਾਸਕ੍ਰਿਪਟ ਫੰਕਸ਼ਨਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦਿਆਂ ਡੌਮ ਨੂੰ ਹੇਰਾਫੇਲਾ ਕਰਨਾ ਸ਼ਾਮਲ ਹੈ. ਨੇਕਸਸਟੈਪ () ਫੰਕਸ਼ਨ ਮੌਜੂਦਾ ਕਦਮ ਨੂੰ ਲੁਕਾਉਂਦਾ ਹੈ ਅਤੇ ਅਗਲੇ ਦਿਨ, ਜਦੋਂਕਿ ਲਾਈਵ ਖੇਤਰ ਨੂੰ ਅਪਡੇਟ ਕਰ ਰਿਹਾ ਹੈ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ. ਦੀ ਵਰਤੋਂ ਕਲਾਸਲਿਸਟ.ਡਾਈਡ ("ਲੁਕਵੇਂ") ਅਤੇ ਕਲਾਸਲਿਸਟ.ਮਿਮਵ ("ਲੁਕਿਆ ਹੋਇਆ") ਬੇਲੋੜੇ ਦੁਬਾਰਾ ਪੇਸ਼ਕਾਰੀ ਤੋਂ ਬਿਨਾਂ ਨਿਰਵਿਘਨ ਤਬਦੀਲੀਆਂ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ. ਇਸ ਤੋਂ ਇਲਾਵਾ, ਟੈਂਪਲੇਟ ਵਿਧੀ ਲਾਭ ਦਸਤਾਵੇਜ਼ ਕਿਰਿਆਸ਼ੀਲ ਚਰਣ ਵਾਲੀ ਸਮੱਗਰੀ ਨੂੰ ਆਰਜੀ ਤੌਰ ਤੇ ਟੀਕਾ ਕਰਨ ਲਈ, ਫਾਰਮ ਨੂੰ ਵਧੇਰੇ ਮਾਡਯੂਲਰ ਅਤੇ ਟ੍ਰੇਨਟੇਬਲ ਬਣਾਉਣਾ.
ਅਸਲ-ਸੰਸਾਰ ਦੀ ਵਰਤੋਂ ਲਈ, ਇੱਕ ਜੌਬ ਦੁਆਰਾ ਤਿਆਰ ਕੀਤੇ ਗਏ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਇੱਕ ਨੌਕਰੀ ਅਰਜ਼ੀ ਫਾਰਮ ਭਰਨ ਤੇ ਵਿਚਾਰ ਕਰੋ. ਸਹੀ ਏਰੀਆ-ਲਾਈਵ ਅਪਡੇਟਾਂ ਤੋਂ ਬਿਨਾਂ, ਉਹ ਸ਼ਾਇਦ ਮਹਿਸੂਸ ਨਾ ਕਰਨ ਜੋ ਉਨ੍ਹਾਂ ਨੂੰ ਅਗਲੇ ਭਾਗ ਨੂੰ ਅੱਗੇ ਵਧਿਆ ਹੈ, ਉਲਝਣ ਵੱਲ ਜਾਂਦਾ ਹੈ. ਸਹੀ ਲਾਗੂਕਰਣ ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਦਾ ਹੈ ਕਿ ਉਹ ਸੁਣਨ ਵਿੱਚ ਹਨ "ਕਦਮ 3: ਆਪਣੇ ਵੇਰਵੇ ਦੀ ਪੁਸ਼ਟੀ ਕਰੋ" ਜਿਵੇਂ ਹੀ ਨਵੀਂ ਸਮੱਗਰੀ ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ. ਆਂਦੀਆ-ਲਾਈਵ image ੰਗ ਨਾਲ ਜੀਅ-ਰਹਿਤ, ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਸਹਿਜ ਤਜ਼ਰਬੇ ਪੈਦਾ ਹੁੰਦਾ ਹੈ ਜੋ ਕਿ ਸ਼ਮੂਲੀਅਤ ਅਤੇ ਵਰਤੋਂਯੋਗਤਾ ਵਿੱਚ ਸੁਧਾਰ ਹੁੰਦਾ ਹੈ. 🚀
ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਵਿੱਚ ਮਲਟੀ-ਸਟੈਪ ਫਾਰਮਾਂ ਲਈ ਏਆਰਆਈਏ-ਲਾਈਵ ਨੂੰ ਲਾਗੂ ਕਰਨਾ
ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਅਤੇ HTML ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਫਰੰਟੈਂਡ ਸਥਾਪਨਾ
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Accessible Multi-Step Form</title>
<style>
.hidden { display: none; }
</style>
</head>
<body>
<div aria-live="polite" id="step-announcer">Step 1 of 3</div>
<div id="form-container">
<div class="step" id="step1">
<p>Step 1: Enter your name</p>
<input type="text" id="name">
<button onclick="nextStep(1)">Next</button>
</div>
<div class="step hidden" id="step2">
<p>Step 2: Enter your email</p>
<input type="email" id="email">
<button onclick="nextStep(2)">Next</button>
</div>
<div class="step hidden" id="step3">
<p>Step 3: Confirm your details</p>
<button onclick="submitForm()">Submit</button>
</div>
</div>
<script>
function nextStep(current) {
document.getElementById(`step${current}`).classList.add("hidden");
document.getElementById(`step${current + 1}`).classList.remove("hidden");
document.getElementById("step-announcer").textContent = `Step ${current + 1} of 3`;
}
function submitForm() {
alert("Form submitted!");
}
</script>
</body>
</html>
ਹਰ ਪੜਾਅ ਦੇ ਟੈਂਪਲੇਟ ਦੇ ਅੰਦਰ ਏਆਰਆਈਏ-ਲਾਈਵ ਦੀ ਵਰਤੋਂ ਕਰਨਾ
ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਫਰੰਟੈਂਡ ਸਥਾਪਨਾ ਅਤੇ ਤੱਤ
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ARIA-Live in Templates</title>
<style>
.hidden { display: none; }
</style>
</head>
<body>
<div id="form-container">
<template id="step1">
<div aria-live="polite">Step 1: Enter your name</div>
<input type="text" id="name">
<button onclick="loadStep(2)">Next</button>
</template>
<template id="step2">
<div aria-live="polite">Step 2: Enter your email</div>
<input type="email" id="email">
<button onclick="loadStep(3)">Next</button>
</template>
<template id="step3">
<div aria-live="polite">Step 3: Confirm your details</div>
<button onclick="submitForm()">Submit</button>
</template>
</div>
<div id="current-step"></div>
<script>
function loadStep(step) {
const template = document.getElementById(`step${step}`);
document.getElementById("current-step").innerHTML = template.innerHTML;
}
function submitForm() {
alert("Form submitted!");
}
loadStep(1);
</script>
</body>
</html>
ਅਸਲ-ਸਮੇਂ ਦੀ ਪ੍ਰਮਾਣਿਕਤਾ ਅਤੇ ਉਪਭੋਗਤਾ ਪ੍ਰਤੀਕ੍ਰਿਆ ਦੇ ਨਾਲ ਮਲਟੀ-ਸਟੈਪ ਰੂਪਾਂ ਨੂੰ ਵਧਾਉਣਾ
ਇੱਕ ਪਹੁੰਚਯੋਗ ਦਾ ਇੱਕ ਮਹੱਤਵਪੂਰਨ ਪਹਿਲੂ ਮਲਟੀ-ਸਟੈਪ ਫਾਰਮ ਜੋ ਕਿ ਅਸੀਂ ਵਿਚਾਰ ਨਹੀਂ ਕੀਤਾ ਹੈ ਅਸਲ-ਸਮੇਂ ਦੀ ਪ੍ਰਮਾਣਿਕਤਾ ਅਤੇ ਉਪਭੋਗਤਾ ਪ੍ਰਤੀਕ੍ਰਿਆ ਹੈ. ਜਦੋਂ ਕਿ ਏਆਰਆਈਏ-ਲਾਈਵ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਕੁਸ਼ਲਤਾ ਨਾਲ ਸਟਾਂ ਤੇ ਨੈਵੀਗੇਟ ਕਰਨ ਵਾਲਿਆਂ ਨੂੰ ਨੈਵੀਗੇਟ ਕਰਨ ਵਾਲਿਆਂ ਨੂੰ ਪ੍ਰਮਾਣਿਤ ਕਰਨ ਵਿੱਚ ਸਹਾਇਤਾ ਕਰਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਉਹਨਾਂ ਨੂੰ ਟਾਈਪ ਕਰਨਾ ਵੀ ਜ਼ਰੂਰੀ ਹੈ. ਲਾਗੂ ਕਰਨਾ ਲਾਈਵ ਗਲਤੀ ਸੁਨੇਹਾ ਏਆਰਆਈਏ ਦੇ ਗੁਣਾਂ ਦੀ ਵਰਤੋਂ ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਦੀ ਹੈ ਕਿ ਸਕਰੀਨ ਰੀਡਰ ਉਪਭੋਗਤਾ ਇੰਸਟੈਂਟ ਫੀਡਬੈਕ ਪ੍ਰਾਪਤ ਕਰਦੇ ਹਨ ਜਦੋਂ ਇੱਕ ਇਨਪੁਟ ਗਲਤ ਹੁੰਦਾ ਹੈ. ਉਦਾਹਰਣ ਦੇ ਲਈ, ਜੇ ਕੋਈ ਉਪਯੋਗਕਰਤਾ ਇੱਕ ਅਪ੍ਰਮਾਣਿਕ ਈਮੇਲ ਵਿੱਚ ਦਾਖਲ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਇੱਕ ਏਆਰਆਈਏ-ਲਾਈਵ ਅਸ਼ੁੱਧੀ ਸੁਨੇਹਾ ਤੁਰੰਤ ਉਡੀਕ ਕਰ ਸਕਦਾ ਹੈ ਜਦੋਂ ਤੱਕ ਉਹ "ਅੱਗੇ" ਨਹੀਂ ਮਾਰਦੇ ਰਹਿਣ ਦੀ ਬਜਾਏ ਉਨ੍ਹਾਂ ਨੂੰ ਸੁਚੇਤ ਕਰ ਸਕਦੇ ਹਨ. ਇਹ ਨਿਰਾਸ਼ਾ ਨੂੰ ਘਟਾਉਂਦਾ ਹੈ ਅਤੇ ਪਹੁੰਚ ਨੂੰ ਸੁਧਾਰਦਾ ਹੈ.
ਇਕ ਹੋਰ ਮਹੱਤਵਪੂਰਣ ਪਹਿਲੂ ਕਦਮਾਂ ਵਿਚਕਾਰ ਫਾਰਮ ਡੇਟਾ ਨੂੰ ਸੁਰੱਖਿਅਤ ਰੱਖਦੀ ਹੈ. ਉਪਭੋਗਤਾ ਗਲਤੀ ਨਾਲ ਪੇਜ ਨੂੰ ਤਾਜ਼ਾ ਕਰ ਸਕਦੇ ਹਨ ਜਾਂ ਆਪਣੀ ਤਰੱਕੀ ਗੁਆ ਸਕਦੇ ਹਨ. ਸਥਾਨਕ ਸਟੋਰੇਜ ਜਾਂ ਸੈਸ਼ਨ ਸਟੋਰੇਜ ਨੂੰ ਲਾਗੂ ਕਰਨਾ ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਦਾ ਹੈ ਕਿ ਉਪਭੋਗਤਾ ਵਾਪਸ ਆਉਂਦੇ ਹਨ ਜਦੋਂ ਕਿਉਕਿ ਡਾਟਾ ਖਤਮ ਹੁੰਦਾ ਹੈ. ਇਹ ਖ਼ਾਸਕਰ ਲੰਬੇ ਰੂਪਾਂ ਜਾਂ ਡਾਕਟਰੀ ਇਤਿਹਾਸ ਦੇ ਰੂਪਾਂ ਵਰਗੇ ਲੰਬੇ ਰੂਪਾਂ ਲਈ ਲਾਭਦਾਇਕ ਹੈ. ਡਿਵੈਲਪਰ ਇਸਤੇਮਾਲ ਕਰ ਸਕਦੇ ਹਨ localStorage.setItem() ਅਤੇ localStorage.getItem() ਉਪਯੋਗਕਰਤਾ ਇਨਪੁਟਜ਼ ਨੂੰ ਗਤੀਸ਼ੀਲਤਾ ਨੂੰ ਰੋਕਣਾ ਅਤੇ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ, ਸਮੁੱਚਾ ਤਜ਼ਰਬੇ ਨੂੰ ਸੁਧਾਰਨਾ.
ਅੰਤ ਵਿੱਚ, ਪਗ਼ ਤਜ਼ਰਬੇ ਨੂੰ ਬਣਾਉਣ ਲਈ ਪਗ਼ਾਂ ਦੇ ਵਿਚਕਾਰ ਅਨੁਕੂਲ ਤਬਦੀਲੀ ਕੁੰਜੀ ਹੈ. ਇਸ ਦੀ ਬਜਾਏ ਤੁਰੰਤ ਕਦਮ ਬਦਲਣਾ, ਐਨੀਮੇਸ਼ਨਾਂ ਜਾਂ ਫੇਡ-ਪ੍ਰਭਾਵਾਂ ਨੂੰ ਜੋੜਨਾ, ਮੁਦਰਾ ਅਤੇ ਵਧੇਰੇ ਅਨੁਭਵੀ ਹੁੰਦਾ ਹੈ. ਦੀ ਵਰਤੋਂ CSS animations ਜਾਂ JavaScript’s setTimeout() ਫੰਕਸ਼ਨ ਪੌੜੀਆਂ ਵਿਚਕਾਰ ਵਧੇਰੇ ਕੁਦਰਤੀ ਸ਼ਿਫਟ ਪ੍ਰਦਾਨ ਕਰ ਸਕਦਾ ਹੈ. ਇਹ ਛੋਟੇ ਸੁਧਾਰ ਵਰਤੋਂ ਯੋਗਤਾ ਨੂੰ ਮਹੱਤਵਪੂਰਣ ਤੌਰ ਤੇ ਯੋਗਦਾਨ ਪਾਉਂਦੇ ਹਨ, ਰੂਪਾਂ ਬਣਾਉਣ ਦੇ ਰੂਪ ਵਿੱਚ ਘੱਟ ਅਚਾਨਕ ਅਤੇ ਵਧੇਰੇ ਰੁਝਾਨ ਮਹਿਸੂਸ ਕਰਦੇ ਹਨ. 🎨
ਬਹੁ-ਕਦਮ ਫਾਰਮ ਪਹੁੰਚਯੋਗਤਾ ਬਾਰੇ ਅਕਸਰ ਪੁੱਛੇ ਜਾਂਦੇ ਪ੍ਰਸ਼ਨ
- ਮਲਟੀ-ਸਟੈਪਿੰਗ ਫਾਰਮ ਵਿੱਚ ਏਰਿਯਾ-ਲਾਈਵ ਮਹੱਤਵਪੂਰਨ ਕਿਉਂ ਹੈ?
- ਏਰੀਆ-ਲਾਈਵ ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਦਾ ਹੈ ਕਿ ਸਕ੍ਰੀਨ ਰੀਡਰ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਰੀਅਲ-ਟਾਈਮ ਦੇ ਅਪਡੇਟਾਂ ਪ੍ਰਾਪਤ ਕਰਦੇ ਹਨ ਜਦੋਂ ਕਦਮ ਬਦਲਦੇ ਹਨ ਜਦੋਂ ਨੇਵੀਗੇਸ਼ਨ ਅਤੇ ਅਸੈਸਬਿਲਟੀ ਵਿੱਚ ਸੁਧਾਰ ਲਿਆਓ.
- ਕੀ ਮੈਨੂੰ ਵਰਤਣਾ ਚਾਹੀਦਾ ਹੈ aria-live="assertive" ਦੇ ਬਜਾਏ aria-live="polite"?
- ਨਹੀਂ, "ਕੁਸ਼ਲ" ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਵਿਘਨ ਪਾ ਸਕਦਾ ਹੈ, ਜੋ ਵਿਘਨਕਾਰੀ ਹੋ ਸਕਦਾ ਹੈ. "ਨਿਮਰਤਾ" ਗੈਰ-ਘੁਸਪੈਠ ਕਰਨ ਵਾਲੀਆਂ ਅਪਡੇਟਾਂ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ ਜਦੋਂ ਤੱਕ ਤੁਰੰਤ ਧਿਆਨ ਦੀ ਲੋੜ ਨਹੀਂ ਹੁੰਦੀ.
- ਮੈਂ ਪੌੜੀਆਂ ਵਿਚਕਾਰ ਉਪਭੋਗਤਾ ਦੇ ਇਨਪੁਟ ਨੂੰ ਕਿਵੇਂ ਬਚਾ ਸਕਦਾ ਹਾਂ?
- ਵਰਤਣ localStorage.setItem() ਅਤੇ localStorage.getItem() ਫਾਰਮ ਡੇਟਾ ਨੂੰ ਸਟੋਰ ਅਤੇ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ, ਜਦੋਂ ਉਪਭੋਗਤਾ ਤਾਜ਼ਗੀ ਜਾਂ ਦੂਰ ਜਾ ਸਕਦੇ ਹਨ ਤਾਂ ਡਾਟਾ ਦੇ ਨੁਕਸਾਨ ਨੂੰ ਰੋਕਣਾ.
- ਮਲਟੀ-ਸਟੈਪ ਫਾਰਮ ਵਿੱਚ ਇਨਪੁਟ ਨੂੰ ਪ੍ਰਮਾਣਿਤ ਕਰਨ ਦਾ ਸਭ ਤੋਂ ਵਧੀਆ ਤਰੀਕਾ ਕੀ ਹੈ?
- ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਰੀਅਲ-ਟਾਈਮ ਪ੍ਰਮਾਣਿਕਤਾ ਲਾਗੂ ਕਰੋ oninput ਜਾਂ addEventListener("input", function) ਆਰਏਆਈਏ-ਲਾਈਵ ਗਲਤੀ ਸੁਨੇਹੇ ਆਰਜੀ ਤੌਰ ਤੇ ਦਿਖਾਉਣ ਲਈ.
- ਮੈਂ ਫਲੋਰ ਟ੍ਰਾਂਜਿਸ਼ਨ ਕਿਵੇਂ ਕਰ ਸਕਦਾ ਹਾਂ?
- ਵਰਤਣ CSS animations ਜਾਂ JavaScript’s setTimeout() ਫਾਡੇ ਇਨ ਪ੍ਰਭਾਵ, ਉਪਭੋਗਤਾ ਦੇ ਤਜ਼ਰਬੇ ਨੂੰ ਸੁਧਾਰਨ ਲਈ.
ਫਾਰਮ ਵਿਚ ਏ ਆਰਆਈਏ-ਲਾਈਵ ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ ਕੁੰਜੀ ਟੇਕੇਵੇਅ
ਵਿੱਚ ਪਹੁੰਚਯੋਗਤਾ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਣਾ ਮਲਟੀ-ਸਟੈਪ ਫਾਰਮ ਇੱਕ ਸੰਮਲਿਤ ਤਜਰਬਾ ਪ੍ਰਦਾਨ ਕਰਨ ਲਈ ਮਹੱਤਵਪੂਰਨ ਹੈ. ਦੀ ਵਰਤੋਂ ਏਰੀਆ-ਲਾਈਵ ਸਹੀ ਤਰ੍ਹਾਂ ਸਕ੍ਰੀਨ ਰੀਡਰ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਨੇਵੀ-ਟਾਈਮ ਅਪਡੇਟਾਂ ਪ੍ਰਾਪਤ ਕਰਨ, ਨੇਵੀਗੇਸ਼ਨ ਬਣਾਉਣ ਲਈ, ਰੀਅਲ-ਟਾਈਮ ਅਪਡੇਟਾਂ ਪ੍ਰਾਪਤ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ. ਭਾਵੇਂ ਇਕੱਲੇ ਲਾਈਵ ਖੇਤਰ ਦਾ ਨਵੀਨੀਕਰਨ ਕਰਨਾ ਜਾਂ ਹਰ ਪੜਾਅ ਦੇ ਅੰਦਰ ਲਾਈਵ ਘੋਸ਼ਣਾਵਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਜ਼ਰੂਰੀ ਜਾਂ ਗਾਇਬਿਤ ਜਾਂ ਗੁੰਮ ਹੋਣ ਵਾਲੇ ਫੀਡਬੈਕ ਨੂੰ ਰੋਕਣ ਲਈ ਵਿਚਾਰਸ਼ੀਲ ਸਥਾਪਨਾ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ.
ਏਆਰਆਈਏ-ਲਾਈਵ ਤੋਂ ਪਰੇ ਉਪਭੋਗਤਾ ਇਨਪੁਟ ਨੂੰ ਸੁਰੱਖਿਅਤ ਕਰਨਾ, ਅਤੇ ਪ੍ਰਮਾਣਿਕਤਾ ਦੁਆਰਾ ਤੁਰੰਤ ਵਰਤੋਂਯੋਗਤਾ ਵਧਾਉਣ ਦੁਆਰਾ ਤੁਰੰਤ ਫੀਡਬੈਕ ਪ੍ਰਦਾਨ ਕਰ ਰਿਹਾ ਹੈ. ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਪ੍ਰਭਾਵ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਅਸਲ ਉਪਭੋਗਤਾਵਾਂ ਨਾਲ ਵੱਖ-ਵੱਖ ਪਹੁੰਚ ਦੀ ਜਾਂਚ ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ. ਇੱਕ ਚੰਗੀ ਤਰ੍ਹਾਂ- ਾਂਚਾਗਤ ਅਤੇ ਪਹੁੰਚਯੋਗ ਫਾਰਮ ਹਰੇਕ ਨੂੰ ਲਾਭ ਹੁੰਦਾ ਹੈ, ਉੱਚ ਰੁਝੇਵਿਆਂ ਵੱਲ ਜਾਂਦਾ ਹੈ ਅਤੇ ਸਮੁੱਚੀ ਉਪਭੋਗਤਾ ਸੰਤੁਸ਼ਟੀ ਵਿੱਚ ਸੁਧਾਰ ਹੁੰਦਾ ਹੈ. 😊
ਹੋਰ ਪੜ੍ਹਨ ਅਤੇ ਹਵਾਲੇ
- ਏਆਰਆਈਏ ਲਾਈਵ ਖੇਤਰਾਂ ਅਤੇ ਉਨ੍ਹਾਂ ਦੇ ਸਭ ਤੋਂ ਵਧੀਆ ਅਭਿਆਸਾਂ ਬਾਰੇ ਵਿਸਥਾਰਪੂਰਣ ਦਿਸ਼ਾ ਨਿਰਦੇਸ਼: ਡਬਲਯੂ 3 ਸੀ ਏਰੀਆ ਨਿਰਧਾਰਨ .
- ਗਤੀਸ਼ੀਲ ਸਮਗਰੀ ਅਪਡੇਟਾਂ ਲਈ ਅਸੈਸਬਿਲਟੀ ਇਨਸਾਈਟਸ ਅਤੇ ਉਦਾਹਰਣਾਂ: ਐਮ ਡੀ ਐਨ ਵੈਬ ਡੌਕਸ - ਏਰੀਆ ਲਾਈਵ ਖੇਤਰ .
- ਸਮੇਤ ਮਲਟੀ-ਸਟੈਪ ਰੂਪਾਂ ਨੂੰ ਡਿਜ਼ਾਈਨ ਕਰਨ ਲਈ ਸਭ ਤੋਂ ਵਧੀਆ ਅਭਿਆਸ: ਏ 1 ਐੱਸ ਪ੍ਰੋਜੈਕਟ - ਪਹੁੰਚਯੋਗ ਰੂਪ .
- ਗਤੀਸ਼ੀਲ ਰੂਪਾਂ ਨੂੰ ਸੰਭਾਲਣ ਲਈ ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਤਕਨੀਕ: ਜਾਵਾਸਕ੍ਰਿਪਟ.ਇਨਫੋ - ਫਾਰਮ ਅਤੇ ਨਿਯੰਤਰਣ .