Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос

newaitix

  • 3
    вклад
  • 308
    вопросов
  • 20
    ответов
  • 65%
    решений
Ответы
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Можно ли сделать такой вызов функции?

    newaitix @newaitix Автор вопроса
    var online=(async()=>{
    	if(navigator.onLine){
    		var date=+new Date();
    		var res=await fetch('/favicon.ico?_='+date);
    		var ret=await res.headers.get('Content-Type').split('/')[0]=='image';
    	}else
    		ret=navigator.onLine;
    	return ret;
    });
    if(await online()==true){
    	console.log('online')
    }else{
    	console.log('offline')
    }
    Ответ написан 21 апр. 2022
    Комментировать
    Комментировать
  • Как в service worker добавить заголовок X-Powered-By?

    newaitix @newaitix Автор вопроса
    var version='5.4.3.5';
    self.addEventListener('install',function(ev){
    	ev.waitUntil(caches.open(version).then(function(cache){
    		if(location.protocol=='http:'||location.protocol=='https:'){
    			return fetch('/resource.json').then(function(res){
    				return res.json();
    			}).then(function(files){
    				return cache.addAll(files);
    			});
    		}
    	}));
    	self.skipWaiting();
    });
    self.addEventListener('activate',function(ev){
    	ev.waitUntil(caches.keys().then(function(keyList){
    		return Promise.all(keyList.map(function(key){
    			if(version!=key){
    				return caches.delete(key);
    			}
    		}));
    	}));
    });
    self.addEventListener('fetch',function(ev){
    	ev.respondWith(caches.match(ev.request).then(function(res){
    		return res||fetch(ev.request).then(function(res){
    			var resToCache=res.clone(),
    				newHeaders=new Headers(resToCache.headers);
    			newHeaders.append('X-Powered-By','nginx');
    			var anotherResponse=new Response(resToCache.body,{
    					status: resToCache.status,
    					statusText: resToCache.statusText,
    					headers: newHeaders
    				});
    			caches.open(version).then(function(cache){
    				if(ev.request.method!='POST'&&(new URL(ev.request.url).protocol=='http:'||new URL(ev.request.url).protocol=='https:')){
    					cache.put(ev.request,anotherResponse);
    				}
    			});
    			return res;
    		}).catch(function(){
    			return caches.match('/offline.html');
    		});
    	}));
    });
    Ответ написан более года назад
    Комментировать
    Комментировать
  • Как подключиться к репозиторию git?

    newaitix @newaitix Автор вопроса
    Создал новый репозиторий.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Как задать RewriteRule в htaccess?

    newaitix @newaitix Автор вопроса
    Правильный ответ
    RewriteRule ^_oauth/facebook$ /prepend.php?c=facebook&%{QUERY_STRING}
    RewriteRule ^_oauth/go$ /prepend.php?c=go&%{QUERY_STRING}
    Только так получается в prepend.php получить и $_GET['c'] и все остальное что входит в query string
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как создать очередность выполнения функций в js?

    newaitix @newaitix
    Ну что то подобное писал я. Вот 2 варианта вызова.
    fn1=function(a){console.log(1);return 1;}
    fn2=function(a){console.log(2,a);return 2;}
    fn3=function(a){console.log(3,a);return 3;}
    fn4=function(a){console.log(4,a);return 4;}
    fn5=function(a){console.log(5,a);}
    fn1.next=fn2;
    fn2.next=fn3;
    fn3.next=fn4;
    fn4.next=fn5;
    jsl(fn1);
    
    fn1=function(a){console.log(1);return 1;}
    fn2=function(a){console.log(a);return a;}
    fn3=function(a){console.log(a);return a;}
    fn4=function(a){console.log(a);return a;}
    fn5=function(a){console.log(a);}
    fn1.next=fn2;
    fn2.next=fn3;
    fn3.next=fn4;
    fn4.next=fn5;
    jsl(fn1);

    Как реализовывал не помню смотрите здесь.
    netwixell/jsl.js
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Получить элемент который находится в определенном блоке по заданным координатам?

    newaitix @newaitix Автор вопроса
    Все оказалось проще. Перед тем как выполнить elementFromPoint я делаю перетаскиваемый элемент
    position:'absolute',
    'z-index':-1

    затем
    elementFromPoint
    а затем у меня по коду идет установка для перетаскиваемого элемента
    position:'absolute',
    top:(ev.clientY+jsl(config.blankId).animate('scrollTop')-dw.y)+'px',
    left:(ev.clientX+jsl('body').animate('scrollLeft')-dw.x)+'px',
    width:jsl(dragObject.block).css('offsetWidth')-2+'px',
    'z-index':1,
    background:'transparent',
    border:'1px solid rgba(128,128,128,.5)'

    Так все работает.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Mouseover mouseout на элементе?

    newaitix @newaitix Автор вопроса
    Создал еще один div в main-image и натянул его поверх тега a (что конечно не совсем правильно но тег a мы просто потом как то прикрутим) и разместил плавающее окно kover между main-image и новосозданным div при помощи z-index
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Nodejs скрипт для заливки в репозиторий.?

    newaitix @newaitix Автор вопроса
    Решил так
    var exec = require('child_process').exec;
    exec('git init',{cwd:'./public/'},function(error,stdout,stderr){
    	exec('git status',{cwd:'./public/'},function(error,stdout,stderr){
    		exec('git add .',{cwd:'./public/'},function(error,stdout,stderr){
    			exec('git commit -m "sadsdasd"',{cwd:'./public/'},function(error,stdout,stderr){
    				exec('git push origin master:username,{cwd:'./public/'},function(error,stdout,stderr){
    				});
    			});
    		});
    	});
    });

    Вместо username нужно указать имя мастера.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Запись в файл с консоли?

    newaitix @newaitix Автор вопроса
    Дело в том что уже пробовал несколько вариантов но они не сработали. В частности модуль read.
    Запись производилась раньше чем я вводил данные в консоли.
    Вот такой вариант с readline работает
    fs.writeFile('./public/library.js',obfuscationResult.getObfuscatedCode(),function(err){
    		fs.readFile('./public/library.js',"utf8",function(error,data){			
    			var rl = readline.createInterface({
    				input:process.stdin,
    				output:process.stdout
    			});
    			rl.question('What do you think of Node.js? ', (answer) => {
    				fs.writeFile('./public/library.js','/*\n* JavaScript Library v'+answer);
    				fs.appendFile('./public/library.js',data);
    				rl.close();
    			});
    		});
    	});
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • JS или JQ — что лучше подходит непрограммисту для решения простых задач?

    newaitix @newaitix
    Jquery это и есть javascript. Если вы хотите писать код и разбираться в нем то javascript. Если вы не хотите ни в чем разбираться то jquery. Но я не представляю как можно учить jquery без знания javascript.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как передать параметр в форму?

    newaitix @newaitix
    Сделать input hidden, который будит содержать эти данные.
    На сервере отловить $_POST['id'];
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Почему возникает проблема инициализации VK.init?

    newaitix @newaitix
    Перевод ошибки "не удается прочитать свойтво insertBefore у переменной bady"
    Файл openapi.js строка 153 символ 434
    Ответ написан более трёх лет назад
    4 комментария
    4 комментария
  • Как задать последнему активному элементу в owl carousel класс?

    newaitix @newaitix
    $('.owl-carousel .owl-item').eq(sbAllItms-1)
    Индекс на один меньше чем количество. Так как индекс начинается с нуля
    Ответ написан более трёх лет назад
    11 комментариев
    11 комментариев
  • Получить query string в файле js?

    newaitix @newaitix Автор вопроса
    Придумал сам решение. Скрипт залить в файл php. К примеру так
    <?
    $sf=$_SERVER['QUERY_STRING'];
    header("Content-Type: application/javascript; charset=utf-8");
    ?>
    var test="<?=$sf?>";
    alert(test);

    подключить этот файл в хедере
    <script type="application/javascript" src="checkout.php?a=5 "></script>

    Вывод // a=5
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Почему Microsoft Excel отображается криво?

    newaitix @newaitix Автор вопроса
    Фаил (нажимаем Alt затем ф) > параметры (нажимаем Alt затем м)
    В открывшемся окне:
    Дополнительно > Общие > поставить галочку "игнорировать dde-запросы от других приложений"
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как сделать исчезновение кнопки после трёх нажатий на неё?

    newaitix @newaitix
    <input type="button" id="test" value="Отправить">

    var count=0;
    test.onclick=function(){
    	count++;
    	if(count>2)
    		document.getElementById('test').style.display='none';
    };
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как пеернести модули?

    newaitix @newaitix Автор вопроса
    https://habrahabr.ru/post/233827/
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Можно ли вызывать события класса java script?

    newaitix @newaitix
    document.getElementsByTagName('body')[0].onclick=function(){console.log('Тест');};
    document.getElementsByTagName('body')[0].onclick();

    db58b857216c4970a2785147d4a30dff.png
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Как сделать такой RewriteRule mydomain.com/что угодно/group в htaccess?

    newaitix @newaitix Автор вопроса
    Наверно так?
    RewriteRule ^([a-z]+)/group u\/$1\/group\/?$
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Как такое возможно вообще (ddr notebook)?

    newaitix @newaitix Автор вопроса
    Не дает отвечать дописал в вопросе
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
Оценили как «Нравится»
Самые активные сегодня
  • Evgenii
    • 8 ответов
    • 0 вопросов
  • pindschik
    pindschik
    • 8 ответов
    • 0 вопросов
  • Dr. Bacon
    • 7 ответов
    • 0 вопросов
  • Денис
    • 5 ответов
    • 1 вопрос
  • CityCat4
    CityCat4
    • 6 ответов
    • 0 вопросов
  • deminpersona
    Денис Демин
    • 3 ответа
    • 1 вопрос
  • © Habr
  • О сервисе
  • Правила
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации