Skip to content

Instantly share code, notes, and snippets.

@baslie
Last active November 1, 2024 11:16
Show Gist options
  • Select an option

  • Save baslie/6091c3e5bc1439e3b3c3e33b8bfafee2 to your computer and use it in GitHub Desktop.

Select an option

Save baslie/6091c3e5bc1439e3b3c3e33b8bfafee2 to your computer and use it in GitHub Desktop.
Bookmarklet: Отправка сообщения в WhatsApp из выбранного текста
/*
* Bookmarklet: Отправка сообщения в WhatsApp из выбранного текста
*
* Описание:
* Этот букмарклет извлекает номер телефона из выделенного текста на веб-странице
* и открывает новую вкладку с окном чата WhatsApp для этого номера.
* Это простой инструмент для быстрого начала разговора в WhatsApp, используя
* номера телефонов, найденные на любой странице.
*
* Как работает:
* 1. Букмарклет захватывает выделенный текст на странице.
* 2. Убирает все символы, кроме цифр и знака '+', из выделенного текста,
* чтобы получить корректный формат номера телефона.
* 3. Создает URL WhatsApp с извлеченным номером телефона.
* 4. Затем открывает URL в новой вкладке браузера, что приводит прямо к
* окну чата WhatsApp с указанным номером.
*
* Использование:
* - Сохраните код в закладках браузера, назвав его, например, "📱 → WhatsApp".
* - Выделите номер телефона на веб-странице.
* - Нажмите на закладку "📱 → WhatsApp".
* - Букмарклет автоматически откроет WhatsApp Web с новым окном чата для
* выделенного номера, позволяя сразу отправить сообщение.
*
* Примечание:
* - Убедитесь, что выделенный текст содержит корректный номер телефона
* (включая международный префикс, если необходимо), чтобы избежать проблем.
* - Этот букмарклет работает только для WhatsApp Web на настольных браузерах.
*
* Разбор кода:
* - `window.getSelection().toString()` захватывает выделенный текст.
* - `val.replace(/[^+\d]+/g, '')` удаляет любые символы, кроме цифр и
* знака плюса ('+'), чтобы номер телефона был в правильном формате.
* - `escape(phone)` кодирует номер телефона для безопасного встраивания в URL.
* - `window.open(link, '_blank')` открывает сгенерированный URL WhatsApp в новой
* вкладке браузера.
*
* Пример:
* Допустим, вы выделяете на веб-странице следующий текст: "+7 952 123-45-67"
* Букмарклет откроет WhatsApp Web с новым окном чата для номера
* телефона "+79521234567".
*/
javascript: (function() {
var val = window.getSelection().toString(); // Получаем выделенный текст
var phone = val.replace(/[^+\d]+/g, ''); // Извлекаем только цифры и '+'
var link = "https://web.whatsapp.com/send?phone=" + escape(phone) + "&text&source&data&app_absent";
window.open(link, '_blank'); // Открываем окно чата WhatsApp в новой вкладке
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment