<script>alert("Hello QnA.Habr!");</script>
Это можно сделать встроенной функцией btoa()
, но она не умеет Unicode: только ASCIIdata:text/html;base64,и_тут_ваш_код_в_base64
data:text/html;base64,CjxzY3JpcHQ+YWxlcnQoIkhlbGxvIFFuQS5IYWJyISIpOzwvc2NyaXB0Pgo=
Если эту волшебную строку вставить в адресную строку браузера, выведется alert.приходит фотография от пользователя и скрипт её обрабатывает, есть 2 функции для обработки, и мне надо сделать так, чтобы пользователю отправлялся результат той функции, которая выполнится быстрее, поскольку в некоторых случаях быстрее выполняется 1 функция, а в некоторых вторая
почему первый код не работает как и второй
id1.onclick = function() { Place('Вода'); };
Тогда эта присвоенная функция выполнится при клике.как правильно реализуется такая простая задумка
const objects = ["вода", "вода", "суша", "берег"];
function commonClickHandler(title, id) {
console.log('Кликнули объект «%s» с id=%s', title, id);
}
objects.forEach((title, i) => {
const div = document.createElement('div');
const id = `id${i}`;
div.id = id;
div.addEventListener('click', () => commonClickHandler(title, id));
document.body.appendChild(div);
});
function ask(question, ...handlers) {}
ask("Как жизнь?", function(){}, 1, 22, "zzz");
// в функцию ask попадёт:
// question = "Как жизнь?";
// handlers = [
// function(){},
// 1,
// 22,
// "zzz"
// ];
Аргументы после первого все попадают в массив handlers. $.get( "file.txt", function( data ) {
window.fileTxtContent = data;
});
и теперь уже станет «можно» и глобально с ним работать. Но на этот момент весь «обычный» код уже давно отработал.function workWithFileTxt(content) {
console.log("Я свободен от jQuery! А вот текст из файла: ", content);
}
$.get( "file.txt", workWithFileTxt);
Normalizer::normalize($cyrillic_name, Normalizer::FORM_D)
// преобразует имя "Юрий" из
// "%D0%AE%D1%80%D0%B8%D0%B9"
// в
// "%D0%AE%D1%80%D0%B8%D0%B8%CC%86" – как в локальных файлах оказалось.
GET / HTTP/1.1
Host: web.site.com
Accept-Language: ru
Обратите внимание на заголовок Host
— тут тот адрес (без дальнейшего пути /a/b/c/index.php
), который ввели в браузере. Если ввели именно ip, он и будет там в заголовке Host
.Host
.Host
находится ip-адрес: отдавать какую-нибудь заглушку, или основной, единственный сайт. getElementsByClassName()
, ..byName()
, ..byTagName()
— возвращают «живую» коллекцию. Когда удаляете 0-й элемент, остальные тут же сдвигаются и бывший 1-м, становится 0-м, но его цикл уже не будет удалять. Теперь к удалению 1-й (бывший 2-й) — поэтому удаляются через один. for (let i = li.length - 1; i >= 0; i--) {
[...menu[1].getElementsByClassName("main-menu__item")]
document.querySelectorAll('.main-menu')[1].remove()
Так по-прежнему в переменнуюlet randomIndex = Math.floor(Math.random() * alphabet.length);
randomIndex
записывается случайный индекс. Один раз.const getRandomIndex = () => Math.floor(Math.random() * alphabet.length);
А вот функция, которая при каждом вызове getRandomIndex()
будет возвращать новый случайный индекс.