Перепост в ЖЖ без кнопки со своего блога

logoМногие спрашивают как сделать кнопку перепоста, не используя кнопку. Делается это достаточно легко, если вы собираетесь делать это на своём отдельном блоге. Поскольку я не профессионал в этом – замечания и оптимизация приветствуется. У кого нет своего standalone блога – можно читать тут

Делаем так:

<div id="text2LJ"><span><img src="http://host.vdasus.com/_l/frank.png" align="left" style="padding: 5px; margin: 5px;" alt="logo">Многие спрашивают как сделать кнопку перепоста, не используя кнопку. Делается это достаточно легко.</span> Поскольку я не профессионал в этом - замечания и оптимизация приветствуется.</div>

Для большей универсальности – будем использовать стандартный функционал ЖЖ. Я использую код букмарклета. Всё, что нам будет нужно, это поместить текст в тэг с определённым id и то, что хотим запостить в ЖЖ отметить тэгом span.

Протестировать (ничего в журнал не отправится – откроется еще одно окно)

Добавить маленький скриптик на страницу:

<script type="text/javascript">
function selectz() {
	var target = document.getElementById('text2LJ').getElementsByTagName('span')[0];
	var rng, sel;
	if ( document.createRange ) {
		rng = document.createRange();
		rng.selectNode( target )
		sel = window.getSelection();
		sel.removeAllRanges();
		sel.addRange( rng );
	} else {
		var rng = document.body.createTextRange();
		rng.moveToElementText( target );
		rng.select();
	}
}
</script>

Скрипт ищет первый тэг с id=text2LJ. Находит внутри него всё, что отмечено тэгом <span> (тоже только первое вхождение). Отмечает его, как будто вы отметили мышью и вызывает стандартный код букмарклета ЖЖ, для отправки в ЖЖ.

Сама ссылка оформлена вот так:

&amp;lt;a href=# onclick=&amp;quot;javascript:void((function(){selectz(); var u='http://www.livejournal.com/',w=window.open('','','toolbar=0, resizable=1, scrollbars=1, status=1, width=730, height=500'); if(window.LJ_bookmarklet) {return LJ_bookmarklet(w,u)}; var e=document.createElement('script'); e.setAttribute('type','text/javascript'); e.onload=function(){LJ_bookmarklet(w,u)}; e.setAttribute('src',u+'js/bookmarklet.js'); document.getElementsByTagName('head').item(0).appendChild(e)})())&amp;quot;&amp;gt; Протестировать (ничего в журнал не отправится - откроется еще одно окно) &amp;lt;/a&amp;gt;

При клике на ссылку будет вызвана функция selectz(), которая делает пометку и далее – вызывается букмарклет ЖЖ.

Это должно работать на любых браузерах, включая, прости господи, IE

Зачем это надо? Дело в том, что мы можем сделать вот такую кнопку (Кликните на ней): logo

&amp;lt;a href=# onclick=&amp;quot;javascript:void((function() {selectz(); var u='http://www.livejournal.com/', w=window.open('','','toolbar=0,resizable=1,scrollbars=1,status=1,width=730,height=500'); if(window.LJ_bookmarklet){return LJ_bookmarklet(w,u)};var e=document.createElement('script'); e.setAttribute('type','text/javascript'); e.onload=function(){LJ_bookmarklet(w,u)};e.setAttribute('src',u+'js/bookmarklet.js'); document.getElementsByTagName('head').item(0).appendChild(e)})())&amp;quot;&amp;gt;&amp;lt;img src=&amp;quot;http://host.vdasus.com/2lj.jpg&amp;quot; style=&amp;quot;padding: 5px; margin: 5px;&amp;quot; alt=&amp;quot;logo&amp;quot;&amp;gt;&amp;lt;/a&amp;gt;

и разместить в своём не ЖЖ блоге…

Если что-то непонятно или не получается – спрашивайте.

Перепост в ЖЖ без кнопки со своего блога: 4 комментария

  1. Знакомый посоветовал зайти на данный блог и явно не зря.

  2. Интересно и позновательно, а будет еще что-то по этой теме?

  3. Добрый день.

    Обратите внимание на сервис http://перепостжж.рф/ (http://перепостжж NULL.рф/) с помощью которого можно легко и просто сделать перепост любых

    записей в журналах, а также вставлять в журнал индивидуальную кнопку перепоста. Сервис также содержит статистику

    перепостов за день, неделю и месяц, таким образом можно узнать наиболее актуальные темы за эти периоды.
    Также сервис предоставляет возможность создания кнопки перепост ВИДЕО и других медиа постов (подробнее

    http://repostjj.livejournal.com/6883.html (http://repostjj NULL.livejournal NULL.com/6883 NULL.html)).

    Блог сервиса http://repostjj.livejournal.com/ (http://repostjj NULL.livejournal NULL.com/)

    Разместите эту информацию в своем журнале.

Обсуждение закрыто.