Кнопка Google+ превращает кнопку твита в другую кнопку Google+

Я разрабатываю веб-сайт, на котором у меня есть сообщение в блоге и кнопки Facebook Like, Google Plus, Tweet под сообщением. В документации Google Plus сказано, что я должен поместить скрипт в тег заголовка, но это только замедляет загрузку моего сайта, так как иногда мой сайт не загружается (белая, пустая страница), пока не загрузится скрипт для кнопки Google Plus (что иногда занимает около 3-4 секунд для подключения и полной загрузки). Итак, я (прочитав некоторые рекомендации в Интернете) поместил тег script в нижнюю часть тега body (в любом случае внутри тега body).

Вот мой код кнопок:

    <div id="ExtrasBox">
                <table>
                    <tr>
                        <td>
                            <iframe src="http://www.facebook.com/plugins/like.php?app_id=192609804132243&amp;href&amp;send=false&amp;layout=button_count&amp;width=46&amp;show_faces=true&amp;action=like&amp;colorscheme=dark&amp;font=lucida+grande&amp;height=21"
                                scrolling="no" frameborder="0" style="border: none; overflow: hidden; width: 46px;
                                height: 21px;" allowtransparency="true"></iframe>
                        </td>
                        <td>
                            <g:plusone size="medium" count="false"></g:plusone>
                        </td>
                        <td>
                            <script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
                            <a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal"
                                data-via="canpoyrazoglu" data-related="can16358p:kişisel hesabım">Tweet</a>
                        </td>
                    </tr>
                </table>
            </div>

У меня также есть скрипт Google+ в конце тела.

Однако теперь я столкнулся с очень странной проблемой. ИНОГДА (и я понятия не имею, в чем причина), когда страница загружается, моя кнопка «Твитнуть» просто превращается в кнопку Google+. Так что правильный такой:

правильный

Но иногда (я несколько раз пытался обновить и полностью обновить, но не смог воспроизвести это прямо сейчас, это было похоже на эту версию с фотошопом) я получаю это:

не тот

И кнопка просто ведет себя как кнопка Google+, проверка в Firebug просто показывает мне две кнопки Google+ и никаких следов кнопки Tweet. У меня правильно закрыты теги (они все равно в разных TD), и самое странное, что эта проблема возникает случайно. Этого не происходит сейчас, но это происходило несколько раз (каждое отдельно после полного обновления и т. д.) сегодня. Я не знаю, имеет ли это какое-то отношение к тому, что тег script находится после тела (поместить тег в заголовок для меня не вариант, я не хочу откладывать сверхбыструю загрузку страницы примерно на 4-5 секунд). секунд для кнопки Google+), так как проблема НЕ воспроизводима.

Есть идеи, в чем может быть причина? Любые полезные/не грязные/хакерские обходные пути/решения приветствуются.


person Can Poyrazoğlu    schedule 01.08.2011    source источник
comment
Не могли бы вы опубликовать свой код HTML/JavaScript? В противном случае никто не сможет указать вам правильное направление.   -  person Tom van Enckevort    schedule 01.08.2011
comment
Мой плохой .. Добавил код.   -  person Can Poyrazoğlu    schedule 01.08.2011
comment
В английском нет самого странного. В следующий раз пиши самое странное.   -  person the_drow    schedule 01.08.2011
comment
и что это добавляет к проблеме?   -  person Can Poyrazoğlu    schedule 01.08.2011
comment
Можете ли вы использовать Opera Dragonfly для получения HTML-кода, чтобы он мог изменить этот тег g:plusone на настоящий HTML-код, чтобы вы могли обновить образец кода?   -  person desbest    schedule 01.08.2011
comment
Ну, я не хочу устанавливать Opera, если есть какие-то альтернативы, которые делают то же самое для Firefox 3.6, IE 9 или Chrome. Есть, или мне пойти и установить Оперу (в крайнем случае)?   -  person Can Poyrazoğlu    schedule 01.08.2011
comment
@can poyrazoğlu: Вы имели в виду меня? Это просто проблема с грамматикой. Назовите это ошибкой компилятора, если хотите.   -  person the_drow    schedule 01.08.2011
comment
В Firefox выделите что-нибудь и просмотрите источник выбора, если это поможет. Я думаю, что не будет.   -  person desbest    schedule 01.08.2011
comment
@desbest Я только что использовал firebug, чтобы вставить содержимое TD, в котором находится +1, не уверен, что это поможет, но: pastebin.com/RVtcHRFg, но проблема непостоянна, я просто не могу воспроизвести ее сейчас.   -  person Can Poyrazoğlu    schedule 01.08.2011
comment
@the_drow это ничего не добавляло к проблеме, хотя я открыт для исправлений, это было немного оскорбительно ... извините, если это не было задумано. это все равно было исправлено.   -  person Can Poyrazoğlu    schedule 01.08.2011
comment
Попробуйте удалить все CSS из документа, включая сбросы CSS, и посмотрите, исправит ли это проблему. Возможно, у вас конфликтующий CSS.   -  person desbest    schedule 01.08.2011
comment
Ничего не меняется, хотя после того, как я разместил вопрос, у меня больше не возникало ошибки.   -  person Can Poyrazoğlu    schedule 01.08.2011
comment
@can poyrazoğlu Прошу прощения, что получилось резко. Если бы я отредактировал ваш вопрос без комментариев, вы бы никогда не узнали.   -  person the_drow    schedule 02.08.2011
comment
@the_drow да, ты прав, иногда я слишком агрессивен, неважно :)   -  person Can Poyrazoğlu    schedule 03.08.2011


Ответы (2)


Кнопки общего доступа на самом деле являются фреймами, поэтому попробуйте заключить каждый javascript для общего доступа внутри в три элемента div или ячейки таблицы.

person desbest    schedule 01.08.2011
comment
OP указывает, что кнопки находятся в разных ячейках таблицы. - person the_drow; 01.08.2011
comment
Это именно то, что я делаю. Обновил вопрос и добавил соответствующую разметку. - person Can Poyrazoğlu; 01.08.2011

Просто чтобы все знали: у меня никогда больше не было этой проблемы, я думаю, что это, скорее всего, была временная ошибка из-за кеша или скрипта. Я тестировал один и тот же сайт в течение нескольких дней, и это никогда не повторялось.

person Can Poyrazoğlu    schedule 06.08.2011