Клуб пользователей блока «Поделиться»

февраль 2021
Как добавить вывод блока "Поделиться" в попапе?
Удалённый пользователь
5 февраля 2021, 13:44

Не получается реализовать вывод блока "Поделиться" в попапе. Сам попап это простой div, который скрыт по умолчанию и открывается по событию в javascript, контент для него генерируется также в скрипте. Весь контент отображается в папапе кроме блока "Поделиться". Как правильно написать скрипт, чтобы отобразить этот блок?

6 комментариев
поделиться от яндекса
Сделать альтернативный CDN скрипта
Александр Бендюжко
26 февраля 2021, 07:29

Для жителей Украины блокируются сервисы яндекса.

Просьба сделать аналогично как на яндекс метрике, Альтернативный CDN..

т.е. "https://cdn.jsdelivr.net/npm/yandex-metrica-watch/tag.js"

Нет комментариев
в API кнопок не работают схемы оформления
spookyr31
27 февраля 2021, 16:30

Добрый день. Если позволите, вначале опишу свою задачу, потом проблему текущую и костыль другой задачи

Итак, у меня на странице открываются картинки в лайтбоксе. Я решил сделать возможность поделиться изображением (с чем столкнулся и как решил после вопроса). Ввиду особенности формирования src изображения, самым простым путем было после всех вызовов процедур, под картинкой вызывать API кнопок. И вот все бы хорошо, ночь пролетает незаметно, НО при применении параметра в коде 

theme: {		
color-scheme: 'whiteblack',
services: 'messenger,vkontakte,facebook,odnoklassniki,telegram,twitter,viber,whatsapp',
size: 's',
.......

В консоль падает ошибка Uncaught SyntaxError: Unexpected token '-' на строку color-scheme: 'whiteblack' и, что логично, кнопки не работают. Если убрать оформление то все грузится, только что кнопки дефолтные в оформлении. Ни "color-scheme": 'whiteblack', ни 'color-scheme': 'whiteblack', ни colorscheme: 'whiteblack' не помогает, тема не срабатывает. А уж любимая javascript color + '-' + scheme и вовсе вываливается. Причем, в документации указано именно color-scheme, остальные параметры работают. В чем может быть причина и как обойти ее?

Теперь про поделиться изображением. Дело в том, что моя цель была именно передать jpg картинку. И я вижу, что такой вопрос часто возникает. Посидев и поэкспериментировав, я уже был в отчаянии, параметр image хоть и верно понимал, но передавалась все равно все статья со всеми картинками. И, хотя, в разборе url и description и image передаются правильно, тот же vk формировал og из head сайта ну и по сути основную задачу не решало. Я решил ее с помощь передачи url в виде разбора src картинки, а в title вставил уже адрес сайта. Не знаю, на сколько это правильное решение, но вот мой код, может кому пригодиться, если не будет считаться вредным советом :-) 

Ya.share2('yandex_share_spec', {
content: {
url: window.location.protocol + '//' + window.location.hostname +  filename,
title:  document.getElementsByTagName("title")[0].innerHTML + ' // здесь любое описание, очень выигрышно смотрится в телеграмме, например - целиком статья доступна по адресу: ' + window.location.href,
description: 'Фото с сайта' + window.location.href,
image: filename, 
}, theme: {		
color-scheme: 'whiteblack', //ВОТ ЭТО НЕ РАБОТАЕТ :-(
services: 'messenger,vkontakte,facebook,odnoklassniki,telegram,twitter,viber,whatsapp',
size: 's',
curtain: true
}
});

Я просто счастлив, что ночь прошла не зря и я смог это реализовать и решил с вами поделиться, даже если код ужасен. Прошу помочь с темами оформления.

5 комментариев
api share,api share2