Открывайте новую вкладку, когда нажимаете кнопки обмена - PullRequest
0 голосов
/ 09 ноября 2018

Я реализовал несколько кнопок обмена в социальных сетях. Работает нормально. Когда я нажимаю на эти кнопки, открывается всплывающее окно. Но мне нужно, чтобы они открылись в новой вкладке. Может кто-нибудь помочь мне, как это сделать? И я хочу, чтобы эти кнопки были круглыми, используя images / svg. Вот мои коды

<div class="fb-share-button" 
    data-href="<?= $url ?>" 
    data-layout="icon"
    data-size="large"
    data-mobile-iframe="true"></div>

<a class="twitter-share-button"
    href="https://twitter.com/intent/tweet"
    data-text="'<?= $quote ?>..' "
    data-url="<?= $url ?>"
    data-size="small"> Tweet </a>

<a data-pin-do="buttonPin"
    href="https://www.pinterest.com/pin/create/button/"
    data-pin-url="<?= $url ?>"
    data-pin-media="<?= $image ?>"
    data-pin-description="<?= $quote ?>"
    data-pin-shape="round"></a>

<div id="fb-root"></div>
<script>
    (function(d, s, id) {
        var js, fjs = d.getElementsByTagName(s)[0];
        if (d.getElementById(id)) return;
        js = d.createElement(s); js.id = id;
        js.src = "https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v3.0";
        fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));
</script>

<script>
    window.twttr = (function(d, s, id) {
        var js, fjs = d.getElementsByTagName(s)[0],
        t = window.twttr || {};
        if (d.getElementById(id)) return t;
        js = d.createElement(s);
        js.id = id;
        js.src = "https://platform.twitter.com/widgets.js";
        fjs.parentNode.insertBefore(js, fjs);

        t._e = [];
        t.ready = function(f) {
        t._e.push(f);
        };

        return t;
    }(document, "script", "twitter-wjs"));
</script>

<script
    type="text/javascript"
    async defer
    src="//assets.pinterest.com/js/pinit.js"
></script>

Ответы [ 3 ]

0 голосов
/ 09 ноября 2018

Когда я нажимаю на эти кнопки, открывается всплывающее окно. Но мне нужно, чтобы они открылись в новой вкладке. Может кто-нибудь помочь мне, как это сделать? И я хочу, чтобы эти кнопки были круглыми, используя images / svg.

Вы не можете сделать это при использовании этих плагинов; они отображают свои собственные элементы со своим собственным стилем и своей собственной логикой сценария, и у вас нет к ним доступа.

Используйте HTML и CSS для создания своих собственных кнопок / ссылок, а затем используйте методы для обмена, просто вызывая URL, который предоставляют эти сети - полный список можно найти здесь, https://github.com/bradvin/social-share-urls

0 голосов
/ 09 ноября 2018

Мне пришлось передать весь этот код вручную, чтобы получить желаемый результат, вот мой код:

<a href="http://www.facebook.com/share.php?u=<?= $url ?>" target="_blank" style="display: inline-block;">
    <img src="facebook_circle.png" style="width: 26px;">
</a>

<a href="https://twitter.com/share?url=<?= $url ?>&text='<?= $quote ?>'" target="_blank" title="Share on Twitter" style="display: inline-block;">
    <img src="twitter_circle.png" style="width: 26px;">
</a>

<a target="_blank" href="http://pinterest.com/pin/create/bookmarklet/?url=<?= $url ?>&media=<?= $image ?>&description=<?= $quote ?>" style="display: inline-block;">
    <img src="pinterest_circle.png" style="width: 26px;">
</a>
0 голосов
/ 09 ноября 2018

для открытия ссылки в новой вкладке, добавьте атрибут 'target' к этому якору или кнопке и установите его значение равным '_blank'.

пример:

<a class="twitter-share-button"
href="https://twitter.com/intent/tweet"
data-text="'<?= $quote ?>..' "
data-url="<?= $url ?>"
data-size="small"
target="_blank"> Tweet </a>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...