На данный вопрос уже ответили:
Есть функция, которая по нажатию на иконку включает музыку. В html в событии onclick в функции в качестве параметра прописан this? Для чего он там прописан?
let playIcon = "https://image.flaticon.com/icons/svg/149/149668.svg";
let pauseIcon = "https://image.flaticon.com/icons/svg/149/149670.svg";
function togglePlay(elm) {
var audio = elm.querySelector('audio');
if (!audio) return;
audio.paused ? audio.play() : audio.pause();
elm.querySelector('img').src = audio.paused ? playIcon : pauseIcon;
}
//2 пример без параметра
let playIcon = "https://image.flaticon.com/icons/svg/149/149668.svg";
let pauseIcon = "https://image.flaticon.com/icons/svg/149/149670.svg";
function togglePlay() {
var audio = document.querySelector("audio");
if (!audio)
return;
audio.paused ? audio.play() : audio.pause();
document.getElementById("button").src = audio.paused ? playIcon : pauseIcon;
}
#button {
width: 40px;
height: 40px;
}
<div class="myaudio-player" onclick="togglePlay(this)">
<img src="https://image.flaticon.com/icons/svg/149/149668.svg" id="button">
<audio>
<source src="https://ccrma.stanford.edu/~jos/mp3/bachfugue.mp3" />
</audio>
</div>
то есть можете объяснить какую роль он выполняет? Я знаю что это ссылка на объект, но тут как такового объекта нет, поэтому непонятно.
Думаю на этом примере Вы сможете понять зачем нужен this.
var myFunc = el => {
console.log(el.textContent);
};
div {
cursor: pointer;
}
<div onclick="myFunc(this)">Click</div>
<div onclick="myFunc(this)">Click 2</div>
Сборка персонального компьютера от Artline: умный выбор для современных пользователей