dispatchEvent ක්රමය
dispatchEvent ක්රමය මගින් මූලද්රව්යයක් මත
සිදුවීමක් අනුකරණය කළ හැකිය.
මෙය අවශ්ය වන්නේ ඇයි: පරිශීලකයෙකු බොත්තමක් එබීම,
ආකෘතියක් යැවීමේ උත්සාහය වැනි දේ අනුකරණය කළ හැකිය.
මෙම අවස්ථාවේදී, සිදුවීම සැබෑ සිදුවීමකින් වෙනස් නොවනු ඇත
event.isTrusted
ගුණාංගය හැර.
සම්මත නොවන (ඔබ විසින් සොයා ගත්) නම් සහිත සිදුවීම් පවා
සෑදිය හැකිය, ඉන්පසු අවශ්ය මොහොතේ ඒවා ක්රියාත්මක කරන්න.
මෙම ක්රමය සිදුවීම ආරම්භ කළ යුතු මූලද්රව්යයට යොදනු ලැබේ.
පරාමිතිය ලෙස ක්රමයට ලැබෙන්නේ
new Event
ගොඩනැගිල්ල භාවිතයෙන් සාදන ලද සිදුවීමක් (වස්තුව).
වාක්ය ඛණ්ඩය
javascriptමූලද්රව්යය.dispatchEvent(සිදුවීම);
උදාහරණය
අපට බොත්තමක් ඇතැයි සිතමු. මෙම බොත්තම එබූ විට පණිවුඩයක් පෙන්වයි. අපි කළ යුත්තේ, මූසිකය බොත්තම මත ගෙන යන විට එම බොත්තම හිතන්නේ එය මත ක්ලික් කර ඇති බවයි:
html<button id="button">button</button>javascriptlet button = document.querySelector('#button');
button.addEventListener('click', function() {
alert('message');
});
button.addEventListener('mouseover', function() {
let clickEvent = new Event('click'); // සිදුවීම සාදන්න
this.dispatchEvent(clickEvent); // බොත්තම මත ක්ලික් කිරීම අනුකරණය කරන්න
});
Результат:
උදාහරණය
ඔබට ඔබේම සිදුවීම් (ඔබේම නම් සහිතව) සෑදිය හැකිය
ඉන්පසු අවශ්ය මොහොතේ ඒවා ක්රියාත්මක කරන්න. අපි
බොත්තමට showMessage සිදුවීම බැඳීම සහ
මූසිකය ගෙන යන විට මෙම සිදුවීම ආරම්භ කරමු:
html<button id="button">බොත්තම</button>javascriptlet button = document.querySelector('#button');
button.addEventListener('showMessage', function() {
alert('message');
});
button.addEventListener('mouseover', function() {
let showMessageEvent = new Event('showMessage'); // සිදුවීම සාදන්න
this.dispatchEvent(showMessageEvent); // සිදුවීම ක්රියාත්මක කිරීම ඇමතුම් කරන්න
});
Результат: