Как мне сделать кнопку типа «Digg it» для моего сайта? - PullRequest
2 голосов
/ 04 января 2009

У меня есть блог-сайт, размещенный на Windows Sever, ASP.Net 3.5, ASP.Net AJAX, SQL Server в фоновом режиме.

Я хочу дать блоггерам кнопку типа «digg-it», которую они могут разместить в своих блогах, чтобы читатели могли кликнуть, чтобы просмотреть сообщение, если оно им нравится.

Я знаю, что буду использовать Javascript для этого. Что я могу сделать, чтобы: -

  1. Получить код с моего сайта, который будет отображать текущий счетчик большого пальца.
  2. Увеличьте счет на моем веб-сайте, если пользователь что-то недооценивает.

Поскольку большинство этих блогов находятся на blogger.com/wordpress.com, код плагина будет встроен в тему блога. Я думаю, что я буду использовать URL-адрес сообщения в блоге в качестве уникального идентификатора. Моя проблема в том, как заставить мой сайт и javascript разговаривать на blogger.com.

Ваша помощь будет оценена.

Спасибо

Ответы [ 3 ]

4 голосов
/ 04 января 2009

Можно использовать обратные вызовы SCRIPT, загружающие данные JSON, вместо использования XmlHttpRequest для решения проблем между доменами.

function dynScript(url){
    var script=document.createElement('script');
    script.src=url;
    script.type="text/javascript";
    document.getElementsByTagName('head')[0].appendChild(script);
}
function handleYourData(json) {
    // Do something with your response data if you need to, like alter
    // dom.
}
function thumbUp(postId) {
    dynScript('http://yourdomain.com/path/to/thumbHandler?callback=handleYourData&thumbs=up&postId=' + postId);
}
function thumbDown(postId) {
    dynScript('http://yourdomain.com/path/to/thumbHandler?callback=handleYourData&thumbs=down&postId=' + postId);
}

Вы можете использовать это в своем HTML.

<a onClick="thumbUp(521);">Thumb up</a> | <a onClick="thumbDown(521);">Thumb Down</a>

Ваш thumbHandler код должен будет выводить JSON с handleYourData(), обернутым вокруг него, чтобы ваш обратный вызов вызывался с данными JSON в качестве аргумента.

0 голосов
/ 05 января 2009

Попробуйте это. Я нашел это на Yahoo! Поиск, потому что я знал, была немецкая версия этого сценария:

Английская версия: http://www.socialbookmarkscript.com/

Немецкий алфавит: http://www.social -bookmark-script.de /

Удачи!

0 голосов
/ 05 января 2009

Хорошо, я получил один ответ, и пока я пробовал этот метод, я нашел что-то более простое.

То, что я собираюсь использовать, - это iframe. Iframe похож на окно браузера в браузере. Код, который я отображаю в iframe, будет иметь внутренний доступ к моему веб-сайту, как если бы это был обычный запрос веб-страницы. Поэтому я могу использовать свои веб-сервисы, фоновый код ASP.Net и вообще все, что хочу, не беспокоясь о том, чтобы испортить хост-сайт.

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

Вот пример кода iframe, который я написал

<script type="text/javascript">
    window.onload = function() {
        alert("http://mysite.com?url=" + window.location.href);
        document.all.blogvaniframe.src = "http://blogvani.com";
    }
</script>
<iframe id="blogvaniframe" height="100" width="100" scrolling="no" frameborder="0">

</iframe>

Я использую javascript для загрузки содержимого в iframe, потому что я хочу передать аргумент в строку запроса url (хотя я еще не проверял это.

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...