Javascript и JQuery (Fancybox) вопрос
Я использую функцию Javascript, приведенную ниже, для совместного использования в Twitter (а также для других сервисов; для этого вопроса код функции упрощен до Twitter), который захватывает URL-адрес и заголовок страницы, которая должна быть передана, и вызывается в ссылка с помощью клика. Это приводит к загрузке страницы общего доступа Twitter во всплывающем окне браузера, т.е. <img src="/images/twitter_16.png" onclick="share.tw()" />
Чтобы соответствовать другим аспектам дизайна сайта, я хотел бы, чтобы страница общего доступа Twitter была открыта не в стандартном окне браузера, а в окне Fancybox (jQuery).
Fancybox может загружать внешнюю страницу в iFrame, когда ссылка img или href содержит класс (в данном случае class="iframe"
) в ссылке и в функции готовности документа в заголовке.
Конечно, прямо сейчас, когда я даю класс iframe ссылке, которая также имеет onclick share.tw()
, я получаю два всплывающих окна: одно окно браузера с загруженной правильной страницей общего доступа Twitter и всплывающее окно Fancybox jQuery, которое показывает сайт 404.
Как изменить функцию, чтобы использовать Fancybox для представления страницы общего доступа Twitter? Это правильный способ подойти к нему? Или есть лучший способ, например, реализовать функцию share в jQuery?
Спасибо ...
Функция обмена Javascript:
var share = {
tw:function(title,url) {
this.share('http://twitter.com/home?status=##URL##+##TITLE##',title,url);
},
share:function(tpl,title,url) {
if(!url) url = encodeURIComponent(window.location);
if(!title) title = encodeURIComponent(document.title);
tpl = tpl.replace("##URL##",url);
tpl = tpl.replace("##TITLE##",title);
window.open(tpl,"sharewindow"+tpl.substr(6,15),"width=640,height=480");
}
};
Он вызывается, то есть: <img src="/images/twitter_16.png" onclick="share.tw()" />
Функция Fancybox, вызываемая добавлением class="iframe"
в ссылке img или href
$(".iframe").fancybox({
'width' : '100%',
'height' : '100%',
'autoScale' : false,
'transitionIn' : 'none',
'transitionOut' : 'none',
'type' : 'iframe'
});