Почему твиттер-букмарклет не блокируется всплывающими окнами? - PullRequest
4 голосов
/ 29 октября 2010

Проверьте эту ссылку. http://dev.twitter.com/pages/share_bookmarklet

Перетащите букмарклет на панель закладок и нажмите на нее. Откроется всплывающее окно.

Почему мой firefox / ie / chrome не блокирует это?

Спасибо

javascript: 
function loadScript(scriptURL) {
    var scriptElem = document.createElement('SCRIPT');
    scriptElem.setAttribute('language', 'JavaScript');
    scriptElem.setAttribute('src', scriptURL);
    document.body.appendChild(scriptElem);
}
var url = 'http://api.bit.ly/shorten?version=2.0.1&login=tweetthees&apiKey=Rxyz&longUrl=' + document.location;
var longUrl = document.location;
loadScript(url + '&callback=tweetme');
function tweetme(json) {
    var shortLink = json.results[longUrl].shortUrl;
    var finalUrl = 'http://twitter.com/home?status=Reading: ' + document.title + ' ' + shortLink;
    window.open(finalUrl, "Share link", "width=1024,height=400,location=1,status=1,scrollbars=1");
}

Ответы [ 3 ]

6 голосов
/ 29 октября 2010

Обычно блокировщик всплывающих окон не блокирует всплывающие окна вообще, они только блокируют всплывающие окна, которые должны открываться без каких-либо действий пользователя.Это не тот случай, если вы используете букмарклеты, потому что пользователь выбирает букмарклет перед открытием всплывающего окна.При использовании букмарклета может случиться так, что это не будет обнаружено блокировщиком всплывающих окон, как сказал Ник (я думаю, в этом нет необходимости, букмарклету следует доверять).

Но на веб-странице это всплывающее окно также не будет заблокировано, если функция вызывается после события щелчка.

1 голос
/ 09 апреля 2012

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

1 голос
/ 29 октября 2010

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

...