• Как это делается (SPA+MPA)?

    @darknefrit
    А Вконтакте не так себя ведёт ? Почему все замечают SPA ajax приложения где угодно но только не под носом.
    На чём угодно это делается.
    URL меняется через браузерное API History. Когда вы кликаете и открывается модальное окно (то что вы называете лайтбоксом) в него грузиться только часть страницы без head , которую нужно отобразить, если вы кликаете и открываете в новой вкладке то грузиться вся страница целиком со всеми скриптами и стилями но вставляется контент который должен отобразится бы в модальном окне.
    Любое спа приложение должно так же работать по моему мнению.
    Логика... когда вы кликаете левой кнопкой мыши то отправляете серверу ajax запрос, с каким нить кастомным header чтобы дать понять серверу что это ajax запрос и нужно вернуть только контент, который потом вставляете в модальное окно.
    Когда вы открываете ссылку в новой вкладке то этот заголовок не передаётся, и сервер понимает что нужно отдать всю страницу с контентом. Как то так
    Ответ написан
  • Как определить, что присвоено переменной в JavaScript?

    @darknefrit
    Ничё не понял из Вашего вопроса :)
    Тут создаётся объект/ассоц.массив с ключами dogs : Fido, Hunter, Snoopie
    var dogs = {
      Fido: "Mutt", Hunter: "Doberman", Snoopie: "Beagle"
    };

    Тут создаётся новая переменная myDog в которую ложиться строка "Hunter" - строка в кавычках - это строка!
    var myDog = "Hunter";
    Тут создаться новая переменная myBreed и ей присваивается значение из dogs с ключём имя которого равно тому что лежит в переменной myDog , тоесть Hunter
    var myBreed = dogs[myDog];
    Если бы было написано так
    var myBreed = myDog;
    То тут myBreed присвоилась бы строка из myDog, но Выше Вы обращаетесь к массиву dogs и в квадратных скобка указываете ключ из которого нужно достать значение
    Ответ написан
    1 комментарий
  • Как брать переменные из 1.js в другой 2.js. но переменному 1.js присваиваются несколько значений, как присвоить к разным переменным в 2.js?

    @darknefrit
    А в чём разница 1js и 2js ? они же загружены на одной и то же странице браузера? text вы в 1js перезаписываете каждый раз. Может в таком случае стоит импользовать объект/массив
    text[1] = '<b class="1">data1</b><br>';
    document.write(text[1] );
    text[2] = '<b class="2">data2</b><br>';
    document.write(text[2] );
    text[3] = '<b class="3">data3</b><br>;
    document.write(text[3] );

    а в 2js передавать уже объект/массив text и получать от туда элементы по индексам text[1],text[2],text[3]
    Ответ написан
  • Как получить данные POST запроса в golang?

    @darknefrit
    Ну там вроди вначале нужно сделать r.ParseMultipartForm() или r.ParseForm() а потом уже можно r.FormValue("123")
    Ответ написан
  • Почему не срабатывает onreadystatechange и readyState при динамическом подключении скриптов?

    @darknefrit Автор вопроса
    cryogenian
    Так надо сделать ?

    var jsArr=['js1.js', 'js2.js'];
       
                        for (var jsFile in jsArr) {
    
                           var script = document.createElement('script');
                           script.src = "/static/js/"+jsArr[jsFile];                
                           document.body.appendChild(script[jsFile ]);
                            (function(script) {
                                   return script.onload = function() {
                                        console.log(script);                              
                                   };
                               })(script);
                           
                        }
    Ответ написан
  • Как решить ошибку sUncaught TypeError: Cannot read property 'addEventListener' of null?

    @darknefrit
    Вы уверены что btnScrollDown что то находит ?
    Ответ написан
    Комментировать
  • Нужно ли изучать ajax?

    @darknefrit
    А чё его изучать ? из браузера вы отправляете запрос серверу, сервера вам отправляет ответ, вы его в браузере обрабатываете. Просто без перезагрузки страницы целиком Что там изучать ?
    Альтернатива наверное websocket, только по сути смысл тот же
    Ответ написан
    Комментировать
  • Как реализовать обновление страницы без перезагрузки самой вкладки?

    @darknefrit
    То есть именно этот сайт у тебя вызвал подобный вопрос а то что вконтакте всю жизнь так работает тебя не смутило ?
    Ответ написан
    Комментировать
  • Что придет Object.keys?

    @darknefrit
    Чувак ты столько слов написал чтобы задать этот вопрос, жесть просто, намного меньше тебе пришлось писать если бы ты написал цикл которые много раз выведете тебе результат этой операции
    Ответ написан
  • Не работает скрипт после ajax, что делать?

    @darknefrit
    В JAVA Или avascript ?
    Как у вас происходит обработка клика ?
    Повесьте на элемент и будет работать
    Либо делегируйте eventlistener на родительский блок куда загружается Ваш ajax контент.
    Ответ написан
    Комментировать
  • Как наиболее точно идентифицировать пользователя при регистрации?

    @darknefrit
    Номер телефона обязателен, с подтверждением по смс... сколько номеров может быть у 1 человека ?
    Ответ написан
  • Что я делаю не так, внутри скрипта?

    @darknefrit
    Скажи а ты сам понимаешь что в коде написано ? Ты его не сам писал ?
    Ну я тоже могу тупить конечно но ты чёто не то сделал.
    Назначь на input уникальный id , а на кнопки повесь событие onclick="quantityMinus('input_id')" и quantityPlus('input_id')
    и напиши две функции
    <div class="countProduct">
    <input class="countProduct__input" type="number" name="countProdict_id1" id="countProdict_id1" value="1">
    <button type="button" onclick="quantityMinus('countProdict_id1')" class="countProduct__btn countProduct__btn--inc">
    -
    </button>
    <button type="button" onclick="quantityPlus('countProdict_id1')" class="countProduct__btn countProduct__btn--dec">
    +
    </button>
    </div>
                                                
    <div class="countProduct">
    <input class="countProduct__input" type="number" name="countProdict_id2" id="countProdict_id2" value="1">
    <button type="button" onclick="quantityMinus('countProdict_id2')" class="countProduct__btn countProduct__btn--inc">
    -
    </button> 
    <button type="button"   onclick="quantityPlus('countProdict_id2')" class="countProduct__btn countProduct__btn--dec">
    +
    </button>
    </div>

    function quantityMinus(target) {
        	let input = document.getElemetById(target);
            if (input.value > 1) {
                input.value= input.val() - 1;
            }
        }
        
        function quantityPlus(target) {
        let input = document.getElemetById(target);
            input.value = input.value + 1;
        }


    и постарайся не мешать jquery с vanilla js? лучше пиши всё на чистом js , jquery отупляет
    Ответ написан
    Комментировать
  • Почему JS преобразует массив PHP в объект?

    @darknefrit
    А что Вас смущает в работе с JS объектом ? У Вас ключи стали айдишниками, всё норм же? Какая разница как он называется объект или ассоциативный массив или карта ?:) В JS всё объекты.
    Ответ написан
    Комментировать
  • Как при открытие страницы открывалось модельное окно?

    @darknefrit
    <style>
                .modal.fade{
                    display:none;
                    position: fixed;
                    top:50%;
                    left:50%;
                    background-color: aquamarine;
                    padding: 30px;
                }
                .modal.fade.open{
                    display:block;
                }
            </style>
            <div id="modal" class="modal fade">
                <div class="modal-dialog" role="document">
                    <div class="modal-content tx-size-sm">
                        <div class="modal-body tx-center pd-y-20 pd-x-20">
                            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                                <span aria-hidden="true">&times;</span>
                            </button>
                            <i class="icon ion-ios-checkmark-outline tx-100 tx-success lh-1 mg-t-20 d-inline-block"></i>
                            <h4 class="tx-success tx-semibold mg-b-20">Поздравляем!</h4>
                            <p class="mg-b-20 mg-x-20"><?php echo $_SESSION['success']; unset($_SESSION['success']); ?></p>
                            <button type="button" class="btn btn-success pd-x-25" data-dismiss="modal" aria-label="Close">Продолжить</button>
                        </div>
                    </div>
                </div>
            </div>
            <script  type= text/javascript>
    			document.addEventListener("DOMContentLoaded", function(event) {
                        document.getElementById('modal').classList.add('open');
    			});
            </script>


    Зря Вы начали изучать Js с JQuery
    Ответ написан
    Комментировать
  • Ajax перезагрузка формы?

    @darknefrit
    Добавьте имя форме, и на кнопку проверить повести событие onclick="checkData(event)", в функции checkData выполните проверку и выведите результат куда надо
    <form method="POST" id="fors" action="" name="formName"  >
    <input type="text" name="sum" value="">
    <input onclick="checkDataAjax(event)" type="button"  value="Проверить данные">
    <input type="submit" id="btn" name="sum" value="Отправить" />
    </form>
    <div id="target"></div>

    function checkDataAjax(event){
      event.preventDefault(); 
      form = new FormData(document.formName);
      let options = {
                    method: "POST",               
                    body:formData,
                    credentials: "include",
                    mode: 'cors'
                };
           let URL = "АдресВашегоСервера";
    			let request = new Request(URL, options);
    			
                fetch(request, options).then(function (response) {				
                    return response.json();
                }).then(function (response) {
                   document.getElementById('target').innerHTML = response;
                }).catch(function (error) {
                  console.log(error);          
                });
      
    }

    Demo

    Только на сервере не $_GET а $_POST
    <?php
    $sum = $_POST["sum"];
    if(!$sum)
    {$sum = "Вы ничего не написали";}
    echo $sum;
    ?>
    Ответ написан
  • Как удалить все блоки, кроме того, по которому нажали?

    @darknefrit
    Если button в каждм блоке то почему бы не сделать
    <button class="btn-buy" onclick=cart.remove({"кроме":7})>

    а уже в
    cart={
    remove(data){
    let blocks = document.getElementsByClassName("table-cart--section");
    for (let block in blocks){
    if (blocks[block].dataset.productid !== data["кроме"])
     blocks[block].ParrentNode.RemoveChilde(blocks[block])
    }
    }
    }

    Если я правильно понял...

    Можно конечно и по вашему, вначале перебрать все блоки выбрать их dataset отправить их в вашу функцию и там опять их перебрать и удалить... Ну как то так эскпереминтируйте
    Ответ написан
    Комментировать
  • Как получить данных на select из база данных через javascript?

    @darknefrit
    Как то так наверное
    fetch(URL_forGetSelectData,
    ).then(function (response) {	
    	return response.json();
    }).then(function (response) {
    // если даные пришли в виде html: '<option value="value_1">name_1</option><option value="value_n">name_n</option>'
    	document.getElementById("selectId").innerHTML=response; 
    	// или если  данные пришли в виде json примерно :
    	// response = {
    	// 	"name_1":"value_1",
    	// 	//...
    	// 	"name_n":"value_n",
    	// };
    	let  fragment = document.createDocumentFragment();
    	for (let option in response){
    		let optionElem = new Option(option, response[option]);
    		fragment.appendChild(optionElem);
    	}
    	document.getElementById("selectId").appendChild(fragment);
    	
    	return;
    }).catch(function (error) {
    	console.log(error);	
    });
    Ответ написан
    Комментировать
  • Какой самый простой способ вызова хранимой функции PostgreSQL и вывода возвращаемого значения на PHP?

    @darknefrit
    $result = pg_query($conn, "SELECT check_login_and_password(аргументы)");
    Не работает ?
    Ответ написан
    Комментировать
  • Как настроить роутер чтобы он ловил wifi и раздавал его через LAN?

    @darknefrit Автор вопроса
    Самое интересно что одно время работал, а потом перестал, wifi ловит и раздаёт а на lan нету, а если на lan есть то wifi не раздаёт.. короче бред какойто а не роутер
    Ответ написан
    Комментировать