Ответы пользователя по тегу JavaScript
  • Как удалить часть HTML кода, используя JavaScript?

    REKTOR_RG
    @REKTOR_RG
    В JS есть возможность работать с element.innerHTML что позволяет менять html-содержимое любого блока, к которому мы можем получить доступ через селекторы по id, классу, имени или тегу.
    Пример:
    document.getElementById("id").innerHTML = "<h1>Hello world!</h1>";

    UPD:

    В данном случае элемент мы находим по селектору
    document.querySelector("#casing > tbody > tr > td > div.popupbody > table > tbody > tr:nth-child(1) > td:nth-child(1)")

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

    REKTOR_RG
    @REKTOR_RG
    Значит я это делаю так:
    В ссылке можно передать аргументы (наверно не раз встречали ссылку вида my.site/something?id=45445, и даже сами сейчас прислали такую ссылку). К чему я собственно веду, там например мы можем передать какую-то цифру которой соответствует определённый текст.
    Допустим у нас будет такая ссылка: https://site.ru/?type=1
    Теперь в JS читаем значение type. Так как в JS нет готовых инструментов для этого, поступим просто. Затребуем необходимость указывать параметр type первым. И так, есть код, который при условии параметра type первого в списке возвращает его значение:
    var type = "0";
    if(window.location.href.split('/')[window.location.href.split('/').length-1].split('=')[0].replace("#","").replace("?","")=="type") 
    {
    type = window.location.href.split('/')[window.location.href.split('/').length-1].split('=')[1].replace("#","");
    }

    Теперь перейдём к html, и найдём нужный заголовок, укажем ему id="titletype"
    <h1 id="titletype">Добро пожаловать!</h1>
    Ок, вернёмся к скрипту:
    var type = "0";
    if(window.location.href.split('/')[window.location.href.split('/').length-1].split('=')[0].replace("#","").replace("?","")=="type") 
    {
    type = window.location.href.split('/')[window.location.href.split('/').length-1].split('=')[1].replace("#","");
    }
    if(type=="1") document.getElementById("titletype").innerHTML = "Спасибо за регистрацию!"
    if(type=="2") document.getElementById("titletype").innerHTML = "Благодарим, что доверяете нам!"
    /*И так далее*/

    Конечный результат:
    <h1 id="titletype">Добро пожаловать!</h1>
    <script>
    var type = "0";
    if(window.location.href.split('/')[window.location.href.split('/').length-1].split('=')[0].replace("#","").replace("?","")=="type") 
    {
    type = window.location.href.split('/')[window.location.href.split('/').length-1].split('=')[1].replace("#","");
    }
    if(type=="1") document.getElementById("titletype").innerHTML = "Спасибо за регистрацию!"
    if(type=="2") document.getElementById("titletype").innerHTML = "Благодарим, что доверяете нам!"
    </script>
    Ответ написан
  • Демо презентация приложения при первом логине юзера?

    REKTOR_RG
    @REKTOR_RG
    Если вас интересует, как реализовать проверку первого входа - можно в базе данных выделить одну ячейку, под информацию о первом входе.
    Если интересует реализация визуальной части - вариантов несколько:
    1. Использовать возможность из notify.js показывать сообщение возле элемента.
    2. Использовать Popovers из Shards вместе с затемнением фона из Modals от туда же. Вместо Shards можно использовать Bootstrap, где есть поддержка vue.js.
    Ответ написан
  • Как реализовать автоматическое определение оптимального пути на карте между точками?

    REKTOR_RG
    @REKTOR_RG
    Не знаю, как в Яндексе, но в Гугле есть API для создания разных карт.
    Почитайте за него, возможно у Вас есть возможность перейти на Гугл Карты: https://cloud.google.com/maps-platform/
    Если вам предпочтительнее Яндекс, загляните сюда:
    https://tech.yandex.ru/maps/jsapi/
    или сюда
    https://tech.yandex.ru/maps/
    Ответ написан
    Комментировать