Ответы пользователя по тегу HTML
  • Как получить путь к файлу из input type="file"?

    Stalker_RED
    @Stalker_RED
    Вы можете получить имя файла из input.value.

    Путь к файлу браузеры не отдают по соображениям безопасности (раньше можно было в фаерфоксе получить, но давно убрали возможность).
    Ответ написан
    Комментировать
  • Можно ли взять разметку из .txt и разместить её с помощью php?

    Stalker_RED
    @Stalker_RED
    Если file_get_contents, то fopen не нужен.
    Достаточно echo file_get_contents('myfile.txt');

    Или даже readfile();

    Ну и для подключения другого исполняемого файла есть специальные конструкции require и include

    но он просто отобразился как текст
    а как что он должен был отобразиться, если в нем текст?
    Ответ написан
    Комментировать
  • Почему не ставится фокус в конец текста?

    Stalker_RED
    @Stalker_RED
    Можно установить выделение или курсор в любое место при помощи Selection Range.
    Проще всего выделить весь текст и сделать collapse() на конец строки.
    https://developer.mozilla.org/en-US/docs/Web/API/R...
    Ответ написан
    Комментировать
  • Как мультибраузерно отображать видео из сервера на HTML странице?

    Stalker_RED
    @Stalker_RED
    Да, конвертировать на сервере.
    Или заранее или "на лету" (дешевле по диску, но дороже по процессору/видеокартам.
    Ответ написан
    Комментировать
  • Как модернизировать календарь?

    Stalker_RED
    @Stalker_RED
    Ну а зачем ты тогда выводишь пустые li? Впиши туда соответствующие даты.
    Ответ написан
    Комментировать
  • Зачем в теге script код обернут в комментарий?

    Stalker_RED
    @Stalker_RED
    В прошлом тысячелетии были браузеры, которые не понимали тег <script> и отображали его содержимое на странице. Потому содержимое тегов <script> было принято комментировать, чтобы не пугать пользователя.
    Зачем это продолжают делать в opencart в 2022 - неведомо, возможно дань традиции.
    Ответ написан
    1 комментарий
  • Для чего был сделаны исключения в элементах?

    Stalker_RED
    @Stalker_RED
    Возможно в этом учебнике также написано, что тег <p> - это сокращенно paragraph, и он не может быть строчным, соответственно. Если не написано, то возможно учебник слабоват. Посмотрите в оглавлении, есть ли там что-нибудь про html семантику. Например про то, что button - элемент формы, и особым образом обрабатывается браузерами.

    Вообще да, с применением скриптов и стилей можно большую часть тегов сэмулировать на основе других тегов. Можно пойти дальше, и свой браузер написать. В конце концов в современном хроме можно запустить виртуальную машину со свой OS (тыц), внутри которой можно запустить еще один браузер. Осталось только выяснить зачем это все делать и кто будет платить зарплату за то, что вы изобретаете какие-то альтернативные теги вместо того, чтобы пользоваться стандартными, которые умеет большинство браузеров.

    Что такое строчно-блочный - непонятно. Вы про inline block?
    Ответ написан
    Комментировать
  • Как найти текст в браузерной игре?

    Stalker_RED
    @Stalker_RED
    На странице var app = ... там json с экранированными символами, которые при расшифровке дают вот такие тексты:
    "localization": {
        "agree_error": "Пожалуйста, подтвердите соглашения",
        "wrong_data": "Вы ввели неверные данные",
        "common_error": "Произошла ошибка, пожалуйста, обратитесь в службу поддержки",
        "not_spoofer_error": "Ошибка!",
        "not_spoofer_goto": "Зайдите в игру по этой ссылке",
        "social_invite_friends_dialog": "Приходи играть",
        "payment_window": "Окно оплаты",
        "restore_pass": "Инструкции по изменению пароля будут отправлены на указанный вами электронный адрес.",
        "pass_empty": "Введите пароль",
        "consent_success": "Изменения успешно сохранены!",
        "consent_error": "Не удалось сохранить изменения, попробуйте позже",
        "account_enter_pin": "На почтовый ящик %email% был отправлен отправлен PIN. Если письмо не пришло, проверьте папку \"спам\"",
        "feedback_common_error": "Произошла ошибка, пожалуйста, обратитесь в службу поддержки",
        "lp.interact.code_reask_succeded": "Новый код отправлен",
        "lp.interact.days_short": "д",
        "lp.interact.hours_short": "ч",
        "lp.interact.minutes_short": "м",
        "lp.interact.realm_ready": "Играть сейчас!",
        "errors.email_empty": "Заполните поле email",
        "errors.email_wrong": "Некорректный email",
        "errors.phone_empty": "Заполните телефон",
        "errors.phone_invalid": "Некорректный телефон",
        "lp.email_gather.application_received": "Заявка получена!",
        "download_email.success": "Инструкция по установке была выслана на %email%",
        "account.new_game_button": "Удалить",
        "account.new_game_success": "Игровой прогресс удален, обновите страницу",
        "account.new_game_success_reload": "Обновить",
        "account.new_game_wrong_input": "Вы ввели неверные данные",
        "ecommpay.button_to_retry": "Повторить попытку",
        "restore_form.try_again": "Повторить",
        "webgl.client_memory_allocation_error": "Игра не смогла выделить память. Закройте, пожалуйста, все вкладки или попробуйте другой браузер",
        "webgl.client_request_502_error": "Что-то пошло не так, попробуйте перезагрузить страницу",
        "payments.error_unavailable": "Платежи временно недоступны",
        "payments.error_retry": "Повторить",
        "faketutor.dialog.greeting.continue": "Продолжить",
        "payment_methods.web.googleplay_card": "Использование платёжного метода Google Pay без привязки банковской карты невозможно. Пожалуйста, сохраните данные карты в вашем браузере и повторите попытку.",
        "payment_methods.web.applepay_card": "Использование платёжного метода Apple Pay без привязки банковской карты невозможно. Пожалуйста, сохраните данные карты в кошельке Apple Wallet и повторите попытку.",
        "cookies.groups.names.statistics": "Статистика",
        "cookies.groups.names.strictly_necessary": "Строго необходимые",
        "cookies.groups.text.strictly_necessary": "Необходимые файлы cookie помогают улучшить пользование сайтом, обеспечивая работу основных функций, вроде навигации по страницам и доступа к безопасным областям сайта. Без этих файлов сайт не сможет нормально функционировать.",
        "cookies.groups.text.statistics": "Статистические файлы cookie позволяют владельцам сайтов узнавать как посетители взаимодействуют с сайтом, анонимно собирая и передавая информацию.",
        "cookies.groups.buttons.accept": "Принять",
        "cookie.warning_text": "Наш сайт использует файлы cookie для вашего удобства. Продолжая использовать наш сайт, вы подтверждаете свое согласие на получение таких файлов. Вы можете ознакомиться с нашей %Политикой конфиденциальности% в отношении файлов cookie и аналогичных технологий.",
        "cookies.groups.names.title": "Управление параметрами содержимого",
        "cookies.groups.buttons.active": "Всегда активно",
        "cookies.groups.names.show_text": "варианты просмотра",
        "no_browser_webgl_support": "Ваш браузер не поддерживает WebGL.",
        "check_faq_for_webgl_issues": "Посетите %link% для поиска решений возможных проблем.",
        "ecommpay.button_pay": "Оплатить",
        "ecommpay.button_back": "Назад",
        "stripe.enter_card_data": "Ввод данных карты",
        "stripe.secure_card_text": "Безопасная оплата картой",
        "stripe.card_number": "Номер карты",
        "stripe.card_date": "ММ/ГГ",
        "stripe.agreement_text": "Нажимая кнопку \"Оплатить\", вы принимаете %Соглашение о хранении идентификационных данных владельца карты%.",
        "stripe.savedcards_text": "Сохранённые карты",
        "stripe.clear_text": "Очистить",
        "stripe.sure_text": "Вы уверены?",
        "dpd_cancel_button": "Отменить",
        "keyin2tables.cookie_warning.Ok": "Хорошо",
        "password_strength.0": "Очень ненадежный пароль",
        "password_strength.1": "Слабый пароль",
        "password_strength.2": "Средний пароль",
        "password_strength.3": "Хороший пароль",
        "password_strength.4": "Очень надежный пароль",
        "preloader_video.unmute": "Включить звук",
        "preloader_video.mute": "Выключить звук",
        "support.emptySubject": "Пожалуйста, введите тему сообщения",
        "support.emptyBody": "Пожалуйста, введите описание проблемы",
        "support.emptyType": "Пожалуйста, выберите тип проблемы",
        "support.emptyEmail": "Пожалуйста, введите email",
        "support.wrongEmail": "Некорректный email",
        "support.common": "Неизвестная ошибка!",
        "restore_form.wait_30": "Нельзя запрашивать восстановление чаще чем раз в 30 секунд",
        "account.new_game_confirm_prompt": "Напишите \"DELETE\" в поле для подтверждения"
      },

    Остальное, боюсь, в других файлах, которые подгружаются отдельными запросами.
    Ответ написан
    Комментировать
  • В чём ошибка в коде?

    Stalker_RED
    @Stalker_RED
    Потому что когда начинается for переменная i=6, а элемента s[6] у вас нет.

    Код сильно переусложнен. Однобуквенные переменные - зло, сбивают с толку.
    Переменная i участвует аж в трех циклах, тоже плохо.

    addEventListener внутри цикла. Хорошо, что сейчас этот цикл сломан :)

    Вот это вы пытались сделать?
    Ответ написан
    Комментировать
  • Как поменять вывод списков?

    Stalker_RED
    @Stalker_RED
    Ответ написан
    Комментировать
  • Как сделать смену текста при нажатии?

    Stalker_RED
    @Stalker_RED
    Если чисто на css, то два спана с разными текстами, чтобы при смене класса у родительского элемента видно было один или другой.
    Или псевдоэлемент, content у которого берется из одного или другого data-атрибута.
    Ответ написан
    Комментировать
  • Как правильно задать регулярные выражения html атрибута pattern?

    Stalker_RED
    @Stalker_RED
    \d* или [0-9]*


    Но вообще, и минус и мантисса - вполне допустимы при записи числа.
    Можете так-же добавить атрибут min="0" чтобы исключить отрицательные числа.

    Еще можно проверять ввод при нажатии клавиш и при вставке, и сразу фильтровать, чтобы эти символы вообще не появлялись в поле ввода.
    Ответ написан
    Комментировать
  • Как сделать анимацию цифр из примера?

    Stalker_RED
    @Stalker_RED
    Обертка с overflow: hidden
    Внутри нее каждый символ в отдельном двухэтажном блоке.
    У каждого блока разная задержка анимации
    Ответ написан
  • Text area можно ли управлять ошибками в строках?

    Stalker_RED
    @Stalker_RED
    Это проверка правописания встроенная в браузер или ОС. Управлять из js ею не получится.
    Ответ написан
    Комментировать
  • Как создать код на javascript?

    Stalker_RED
    @Stalker_RED
    const asdContainer = document.getElementById('asd-container');
    if (asdContainer) {
      const text = asdContainer.textContent;
      console.log(text);
    }
    Ответ написан
  • Как обратиться к элементу в ячейке таблицы ( Jquery)?

    Stalker_RED
    @Stalker_RED
    table.addEventListener('click', function(evt) {
        const cell = evt.target.closest('span');
        if (cell && cell.matches('tr td span')) {
            alert(cell.textContent);
        } 
    });


    $('table').on('click', 'tr td span', function() {
      alert(this.textContent);
    });

    Писал с телефона, возможны опечатки.
    Ответ написан
  • Почему toggle меняет класс только одного элемента?

    Stalker_RED
    @Stalker_RED
    Что не так?
    let item = document.querySelector('li') // первый попавшийся li
    // ...
    item.classList.toggle('done') // именно ему вы и переключаете класс


    Вот вам для сравнения
    Ответ написан
  • Как убрать/ добавить кнопку?

    Stalker_RED
    @Stalker_RED
    let isFirstClick = true; // флаг первого клика
    
    btn1.onclick = function() { // при клике по кнопке №1
        btn3.hidden = true; // скрываем кнопку №3
    };
    
    btn2.onclick = function() { // при клике по кнопке №2
      if (isFirstClick) {
        isFirstClick = false; // убираем флаг
        btn3.hidden = false; // показываем кнопку №3
      }
    };


    Ответ написан
    Комментировать