<a onclick="javascript:func(this)" >here</a>
Apa thisartinya di naskah?
<a onclick="func(this)" >here</a>
<a onclick="javascript:func(this)" >here</a>
Apa thisartinya di naskah?
<a onclick="func(this)" >here</a>
Jawaban:
Jika Anda bertanya tentang, thismewakili elemen DOM HTML.
Jadi itu akan menjadi <a>elemen yang diklik.
Ini mengacu pada elemen di DOM yang memiliki onclickatribut:
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js">
</script>
<script type="text/javascript">
function func(e) {
$(e).text('there');
}
</script>
<a onclick="func(this)">here</a>
(Contoh ini menggunakan jQuery .)
Nilai atribut event handler seperti onclick seharusnya hanya berupa JavaScript, tanpa awalan "javascript:". Javascript: pseudo-protocol digunakan di URL, misalnya:
<a href="javascript:func(this)">here</a>
Anda harus menggunakan onclick="func(this)"formulir sebagai preferensi untuk ini. Perhatikan juga bahwa dalam contoh saya di atas menggunakan javascript: pseudo-protocol "this" akan merujuk ke objek jendela daripada <a>elemennya.
Dalam JavaScript thismengacu pada elemen yang mengandung aksi. Misalnya, jika Anda memiliki fungsi yang disebut hide():
function hide(element){
element.style.display = 'none';
}
Memanggil hidedengan thisakan menyembunyikan elemen. Ini hanya mengembalikan elemen yang diklik, meskipun mirip dengan elemen lain di DOM.
Misalnya, Anda mungkin telah thismengklik nomor di HTML di bawah ini hanya akan menyembunyikan poin peluru yang diklik.
<ul>
<li class="bullet" onclick="hide(this);">1</li>
<li class="bullet" onclick="hide(this);">2</li>
<li class="bullet" onclick="hide(this);">3</li>
<li class="bullet" onclick="hide(this);">4</li>
</ul>
Di sini (ini) adalah objek yang berisi semua fitur / properti dari elemen dom. Anda bisa melihat
console.log(this);
Ini akan menampilkan semua atribut properti dari elemen dom dengan hierarki. Anda dapat memanipulasi elemen dom dengan ini.
Jelaskan juga pada tautan di bawah ini: -
kata kunci ini dalam acara addEventListener
function getValue(o) {
alert(o.innerHTML);
}
function hide(current) {
current.setAttribute("style", "display: none");
}
var bullet = document.querySelectorAll(".bullet");
for (var x in bullet) {
bullet[x].onclick = function() {
hide(this);
};
};
/* Using dynamic DOM Event */
document.querySelector("#li").addEventListener("click", function() {
getValue(this); /* this = document.querySelector("#li") Object */
});
li {
cursor: pointer;
}
<ul>
<li onclick="getValue(this);">A</li>
<li id="li" >B</li>
<hr />
<li class="bullet" >1</li>
<li class="bullet" >2</li>
<li class="bullet" >3</li>
<li class="bullet" >4</li>
</ul>