Задать вопрос
  • Обойти функцию на сайте?

    Aetae
    @Aetae Куратор тега JavaScript
    Zickname, вот вариант совсем по хардкору:
    const {get, set, ...rest} = Object.getOwnPropertyDescriptor(Element.prototype, 'innerHTML');
    
    // поиск индекса в списке нужных элементов, если надо
    function indexOf(element) {
      // список элементов, среди которых мы ищем
      const list = document.querySelectorAll(`#content .container div[id^="q_"] .card-header`);
      return Array.prototype.indexOf.call(list, element);
    }
    
    Object.defineProperty(Element.prototype, 'innerHTML', {
      ...rest,
      // подмена получения innerHTML
      get() {
        let innerHTML = get.call(this);
    
        const index = indexOf(this);
        if(index !== -1) {
          console.log('Получаем innerHTML у элемента с индексом %d', index, this, innerHTML);
        }
    
        return innerHTML;
      },
    
      // подмена установки innerHTML
      set(innerHTML) {
        const index = indexOf(this);
        if(index !== -1) {
          console.log('Устанавливаем innerHTML у элемента с индексом %d:', index, this, innerHTML);
        }
    
        return set.call(this, innerHTML);
      }
    });

    Подмена innerHTML у ВСЕГО, у чего есть innerHTML. Тебе осталось проверить, что это именно тот элемент что нужен.

    Можешь вместо `#content .container div[id^="q_"] .card-header` написать '*' и прологировать все вызовы innerHTML.
  • Обойти функцию на сайте?

    Aetae
    @Aetae Куратор тега JavaScript
    Zickname, в смысле при перегрузке и в смысле не срабатывает?

    Может меняется адрес и скрипт вообще не подключается?
    Тогда посмотри чтоб @match у тебя содержал * на меняющихся местах.

    Может меняется сам скрипт на странице и наша врезка уже не работает?
    Проверь.

    Может страница обновляется через ajax без реальной перезагрузки?
    Тогда:
    1. закомментируй обратно, если раскомментировал: // NodeList.prototype.forEach = forEach;;
    2. посмотри может функция вызывается другим образом откуда-то из другого места при такой загрузке.
  • Где в реестре находятся настройки отключения APM для HDD?

    Aetae
    @Aetae
    В софт для прошивки конкретного диска. С малым шансом на успех.
    Это всё контролируется самим диском, не ОС. Есть какие-то боль-мене общие вроде стандарты, которые и использует hddscan, но как сам видишь - производители не особо им и следуют.
  • Почему при многократном вызове функции нет многократно возвращаемых значений?

    Aetae
    @Aetae
    Я не знаю Lua, но подозреваю, что цикл проходит моментально, а потому os.time() при каждом вызове одинаков и, соответственно, seed рандома.)
  • Как получить счастливое число?

    Aetae
    @Aetae Куратор тега JavaScript
    spoT1, для изучения моего ответа более чем достаточно. Тебе же нужно готовое решение. По запросам и отношение, недруже.
  • Как зная название метода и его аргументы я могу его вызвать строчно?

    Aetae
    @Aetae Куратор тега JavaScript
    Dmitri1998, а я уже ответил: то что написано в логе - именно так и работает. Что именно от вас там хотят никто не знает кроме вас.
  • Как получить счастливое число?

    Aetae
    @Aetae Куратор тега JavaScript
    spoT1, изучить js, друже, изучить js.

    Ну или остаться невеждой и воспользоваться вариантом bingumd, с небольшой правкой из комментов.)
  • Как получить счастливое число?

    Aetae
    @Aetae Куратор тега JavaScript
    Не сработает. не бывает числа 000000, это всё равно 0, строка, соответственно, '0' и массив ['0'].

    Но если очень хочется: array = String(array).padStart(6, 0).)
  • Есть ли возможность использовать несколько раз return?

    Aetae
    @Aetae Куратор тега JavaScript
    spoT1, не, не должен.)
    Начни с азов языка. Даже можно не javascript.
    Такие дикие предположения может только человек вообще не имевший знакомства с основами программирования выдать. (Не в обиду, это явный факт.)

    Решение наверно примерно такое, если я правильно понял:
    let arr = [1, 2, 3, 4, 5]
    
    let result = arr.reduce(function([a, b], c){
      return [a+c, b*c]
    }, [0, 1])
    
    console.log(...result);
  • Есть ли возможность использовать несколько раз return?

    Aetae
    @Aetae Куратор тега JavaScript
    spoT1, возвращай массив в map: return [a+b, a*b];.

    Как вообще по-твоему должен работать "двойной возврат" в reduce? Попеременно умножать и складывать? Или что?
  • Как зная название метода и его аргументы я могу его вызвать строчно?

    Aetae
    @Aetae Куратор тега JavaScript
    Dmitri1998, проблема то в чём? Работает именно так как ты написал. Что там у тебя где не проходит - хз.
    Могу только предположить, что оно хочет возможность использовать несколько аргументов. Как этого добиться - есть в ответе.
  • Как решить - npm install выдаёт ошибку?

    Aetae
    @Aetae
    Сергей Кузнецов, не, не поможет, оно мажорные версии не прыгает.
    А вот поменять версию на gulp-sass@5 - возможно поможет.)
  • Как решить - npm install выдаёт ошибку?

    Aetae
    @Aetae
    Михаил, во-первых: просто sass медленнее на порядок.
    Во-вторых: node-sass хоть и deprecated но на вечной поддержке.
    В-третьих: с вероятностью 99% он не сам его ставит, а это зависимость зависимости.

    Raym0NT, как я указал тут, дело в несоответствии версии node-sass и версии Node.js.
    Вы можете либо откатиться на более старую версию node(14), либо принудительно заставить пакеты использовать node-sass@6, например через yarn resolutions.
  • Как не обрабатывать нажатия по SVG?

    Aetae
    @Aetae Куратор тега JavaScript
    У тебя же vue судя по коду, нахрена ты вообще полез руками обработчки ставить?
  • Обойти функцию на сайте?

    Aetae
    @Aetae Куратор тега JavaScript
    Zickname, ну например можно вот так вот вклиниться сюда, подменив заранее стандартный forEach:
    NodeList.prototype.forEach = ((forEach) => {
      return function(func, ...args) {
        // если переданная функция та что надо
        if(String(func).includes('out += g(str[i]);')) {
          // если вызов происходит только один раз, то можно 
          // отменить наш патч, чтоб не замедлять работу
          // NodeList.prototype.forEach = forEach;
          
          // делаем что-то другое, или не делаем ничего
          
          return;
        };
        
        // иначе выполняем forEach как обычно
        return forEach.call(this, func, ...args);
      }
    })(NodeList.prototype.forEach);

    Теперь вызов:
    document.querySelectorAll(`#content .container div[id^="q_"] .card-header`).forEach
    будет вызывать нашу подмену.
  • Обойти функцию на сайте?

    Aetae
    @Aetae Куратор тега JavaScript
    Zickname, важна не сама функция, а где она задаётся, чтоб её подменить можно было. Хорошо если в глобале, а вот если где-то ещё - там пляски с бубном начнутся.
  • Очень странная ошибка. Node JS / VK API?

    Aetae
    @Aetae
    message.payload.action - undefined.
    Сделай лог message.payload и смотри что там на самом деле есть.
  • Как поменять стиль в компоненте в Vue.js при нажатии на элемент в другом компоненте?

    Aetae
    @Aetae Куратор тега Vue.js
    Максим, не, в таком простом случае:
    App:
    data: {
      showMobileMenu: true
    }

    Aside:
    <aside :show-mobile-menu.sync="showMobileMenu"/>
    props: ['showMobileMenu'],
    <button @click="$emit('update:showMobileMenu', !this.showMobileMenu)"/>

    Asd:
    <asd :show-mobile-menu="showMobileMenu"/>
    props: ['showMobileMenu'],
  • На что ругается валидатор?

    Aetae
    @Aetae
    Мб у тебя русская буква c или a затесалась в атрибут?)
    Ересь какая-то.
  • Почему интернет провайдеры не могут мне дать "белый" + "динамический" IP?

    Aetae
    @Aetae
    ORTOL, принципиальная разница между этими компаниями - в принципиально разном построении сети с самого своего зарождения.
    Вы наверное настраивали свой роутер и думали что всё просто. Нет всё не просто. Существует огромное количество разного оборудования, огромное количество разных протоколов и систем, которые могут настраиваться огромным количеством разных способов. Помимо этого у каждого провайдера есть множество либо самописных либо настроенных под себя систем, которые работают с конкретной конфигурацией.
    Разные провайдеры имеют принципиально разный фундамент, на котором построено всё остальное, и вы предлагаете этот фундамент вынуть ради себя. У кого-то система построена более гибко, и, теоретически, они смогут вас удовлетворить, у кого-то же всё прибито гвоздями, но в любом случае никто не будет этого делать, потому что это изменение, которое может затронуть всю инфраструктуру и в случае чего положить всех. Соотношение затрат на работу и рисков к прибыли - стремится к бесконечности.
    Рекомендую вам глянуть на цикл статей "Сети для самых маленьких", чтоб вам было понятно насколько глубока кроличья нора.