#jquery #facebook
#jquery #Facebook
Вопрос:
У меня есть следующий скрипт. Как вы можете видеть, он обновляет fb href, но по какой-то странной причине like не обрабатывается. Я что-то перепутал?
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
</head>
<script>
$(document).ready(function() {
$('#submit').click(function() {
$('fb\:like').attr('href', $("#URL").val());
});
});
</script>
<body>
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js#appId=174802005910704amp;amp;xfbml=1"></script>
<fb:like href="#" send="false" layout="box_count" width="80" show_faces="false" font=""></fb:like>
<input type="text" id="URL" />
<input type="button" id="submit" value="go">
</body>
</html>
Будем признательны за любую помощь.
Комментарии:
1. Я вижу, что вы пытаетесь сделать.. Вы пытаетесь заставить пользователя поставить лайк другой странице, нажав «Мне нравится» на одной странице. Не сработает, братан, кнопка fb: like отображается в iframe, и вы не можете изменить ее href программно после ее отображения. Хорошая попытка, хотя 🙂
Ответ №1:
Нет, это мало что даст, потому что <fb:like>
тег уже обработан и визуализирован. все, что вы делаете (если это действительно работает), это изменение атрибута, которое не имеет никакого эффекта
Попробуйте объяснить, чего вы пытаетесь достичь, и вы получите лучший ответ
Комментарии:
1. Спасибо за ответ. Я пытаюсь обновить URL Facebook like из формы .. <тип ввода= «text» id =»URL» /> <тип ввода = «button» id =»submit» значение =»go»>
2. Вы успешно обновляете его, но это ничего не изменит на вашей странице, попробуйте взглянуть на свой DOM с помощью firebug, чем вы лучше поймете мой ответ, кнопка like превращается в iframe и больше не зависит от тега like
3. Как изменить атрибут перед отображением?
4. вы изменяете его в html или вставляете динамически с правильным атрибутом url.
Ответ №2:
Добавьте это в свой html
<div class="share"></div>
При загрузке и при нажатии кнопки или изменении какого-либо состояния вызывайте эту функцию
function update_share_location() {
// Empty previous share stuff
$('.share').empty();
// Your new share location
var url_loc = 'http://yournewshare.com';
share_options = '<iframe src="//www.facebook.com/plugins/like.php?href=' url_loc 'amp;amp;send=falseamp;amp;layout=button_countamp;amp;width=250amp;amp;show_faces=falseamp;amp;action=likeamp;amp;colorscheme=lightamp;amp;fontamp;amp;height=26" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:200px; height:26px;" allowTransparency="true"></iframe>';
// Update html
$('.share').html(share_options);
}