Лампочка в Javascript не включается - PullRequest
1 голос
/ 05 апреля 2020
image

Кнопка не работает, то есть лампочки не включаются. Я искал в Google и не нашел никакого решения. Что я сделал не так?

Ответы [ 4 ]

0 голосов
/ 05 апреля 2020

Ну, я заменил «==» на «заканчивается», и это сработало. Спасибо за помощь.

0 голосов
/ 05 апреля 2020

с использованием img.src вернет абсолютный путь, а не относительный путь, поэтому document.getElementById("light").src никогда не будет равен /pic_bulboff.gif. Вы также можете добавить baseurl в свою логику c или использовать вместо нее .includes(""):

 function click_turn() {
        if (document.getElementById("light").src.includes("pic_bulboff.gif") {
            document.getElementById("light").src = "/pic_bulbon.gif";
        }
        else {
            document.getElementById("light").src = "/pic_bulboff.gif";
        }
    }
0 голосов
/ 05 апреля 2020

document.getElementById("light").src возвращает полный путь ('http://etc').

try document.getElementById("light").src.endsWith("/pic_bulboff.gif")

0 голосов
/ 05 апреля 2020

Свойство HTMLMediaElement.sr c отражает значение атрибута sr c медиаэлемента HTML, который указывает URL-адрес медиа-ресурса для использования в элементе.

Вместо использования свойства src вы должны использовать getAttribute для чтения атрибута элемента, который будет не URL, а назначенным значением.

function click_turn() {
  if (document.getElementById("light").getAttribute('src') == "pic_bulboff.gif") {
    document.getElementById("light").setAttribute('src', "pic_bulbon.gif")
  } else {
    document.getElementById("light").setAttribute('src', "pic_bulboff.gif")
  }
}
image
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...