Как я могу проверить, изменилось ли текстовое содержимое на странице?

Я хочу проверить, меняется ли текстовое содержимое в корзине var на этой странице: https://www.supremenewyork.com/shop/all

let cart = document.getElementById('items-count').textContent;

console.info(cart);
cart.addEventListener('change', function() {
 console.info("cart");
 window.location.replace("http://stackoverflow.com");
});

я получаю эту ошибку

Uncaught TypeError: cart.addEventListener is not a function at chrome-extension://ljhadajgdcijdfoopfbkjibfebkilieh/supreme.js:11:6

Скрипт запускается, когда я захожу на страницу.

Я уже пытался отслеживать его с помощью цикла while, как в следующем коде, но затем веб-сайт зависает, и я больше не могу его использовать, пока не изменится var

let carted = 0
let cart = document.getElementById('items-count').textContent;
while (carted < 1 ) {
console.info(cart);
if (cart.length > 2) {
    cart ++;
    window.location.replace("http://stackoverflow.com");
    }
}
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
29
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Если вы хотите добавить слушателя, вы не можете сделать это в textContent.

let cart = document.getElementById('items-count'); //.textContent

console.info(cart);
cart.addEventListener('change', function() {
 console.info("cart");
 window.location.replace("http://stackoverflow.com");
});

Если вам нужно это значение, вы можете сохранить его в другой переменной:

var content = cart.textContent

да, но когда я использую его таким образом, он не обнаруживает изменения. У вас есть идея, как я могу обнаружить изменение в текстовом содержании, которое мне нужно, чтобы обнаружить это изменение prnt.sc/j2SSE0rgK9kB

freezy361 16.03.2022 21:30

Вы могли

var item = document.getElementById('items-count');
item.addEventListener("change", DoStuff);
function DoStuff(){
//do what do you want to do.
}

когда я использую его таким образом, он не обнаруживает изменения. У вас есть идея, как я могу обнаружить изменение в текстовом содержании: prnt.sc/j2SSE0rgK9kB

freezy361 16.03.2022 21:37

как изменить этот текст? если изменить его с помощью AJAX, вы можете использовать его там

Tayfun Yuksel 16.03.2022 21:48
Ответ принят как подходящий

Потому что вы пытаетесь добавить прослушиватель событий к элементу textContent, а не к своему элементу, и вы не можете этого сделать. Просто сделай это

let cart = document.getElementById('items-count');

console.info(cart);
cart.addEventListener('change', function() {
 console.info(`cart content has changed — ${cart.textContent}`);
 window.location.replace("http://stackoverflow.com");
});

это изменение не обнаружено prnt.sc/j2SSE0rgK9kB

freezy361 16.03.2022 21:56

Я уверен, что это не change, а onchange. Обратитесь к MDN за списком прослушивателей событий, возможно, вы найдете то, что ищете.

StuckDuck 18.03.2022 14:09

Другие вопросы по теме