У меня есть этот код в JavaScript:JavaScript глобальную переменную в функции и .hover
status = document.getElementById('status2');
$('#slider > img').hover(
function() {
stopLoop();
status.innerHTML = "paused";
},
function() {
startSlider();
status.innerHTML = "playing";
}
);
где я смотрю на все изображения в моем HTML, которые имеют ползунок ID и когда я зависать на то я хочу, чтобы добавить слово (приостановлено или воспроизведено) тегу span, который имеет статус id2. Но я не знаю, почему глобальная переменная не работает, единственный способ, которым я делаю это работа ставит локальную переменную внутри каждого несильно, как это:
function() {
stopLoop();
var status = document.getElementById('status2');
status.innerHTML = "paused";
},
function() {
startSlider();
var status = document.getElementById('status2');
status.innerHTML = "playing";
}
Может кто-нибудь мне, почему?
ПРИМЕЧАНИЕ: как я уже говорил, все работает с локальными переменными, но не устанавливает его как глобальную переменную.
потому что к тому времени, когда вы запустите 'status = document.getElementById ('status2');' DOM не был готов, поэтому вы получите 'status' как' undefined', и поэтому он не будет работать дальше – vinayakj
Вы говорите, что ищете все изображения с ползунком id, но ваш код проверяет изображения, которые являются прямыми дочерними элементами элементов с ползунком id. Возможно, [эта страница] (https://css-tricks.com/child-and-sibling-selectors/) объясняет это лучше? Изображения с идентификатором 'slider' выбраны с помощью '$ ('img # slider')', а дети, являющиеся изображениями элементов с id 'slider', выбираются с помощью '$ ('# slider> img'). – FWDekker
Если вы хотите, вы можете запустить полный jQuery и использовать 'var status = $ (" status2 ");' и 'status.html (" playing ");'. – Anders