2016-01-28 2 views
1

Я использую JQuery Всплывающее Overlay - http://www.jqueryscript.net/demo/Responsive-Accessible-jQuery-Modal-Plugin-Popup-Overlay/JQuery всплывающее окно наложения - получить содержание

Вместо встраивания содержимого всплывающего в HTML, я хотел, чтобы получить его из другой страницы мыши. У меня есть работа, чтобы получить контент по клику, но проблема в том, что я использую 4 всплывающих вкладки, и если я нажму один, а затем другой, я получаю повторяющиеся результаты. Я попытался использовать один клик и кусочек, но не работал.

вот HTML и сценарий

<li class="tablink rafters_btn_open"><a>RAFTER POPUP TAB</a></li> 
<li class="tablink postseason_btn_open"><a>POSTSEASON POPUP TAB</a></li> 
<li class="tablink alpha_btn_open"><a>ALPHA POPUP TAB</a></li> 
<li class="tablink hof_btn_open"><a>HOF POPUP TAB</a></li> 

$('.tablink').one('click',function(){ 
    $.get('http://mysite.page2.com', function (data) { 
     $(data).find('#rafters').appendTo('#rafters_btn'); 
     $(data).find('#hof').appendTo('#hof_btn'); 
     $(data).find('#alphacup').appendTo('#alpha_btn'); 
     $(data).find('#postseason').appendTo('#postseason_btn'); 
    }); 
}); 

<div id="rafters_btn"></div> 
<div id="hof_btn"></div> 
<div id="alpha_btn"></div> 
<div id="postseason_btn"></div> 

Если я нажимаю на tablink.rafters_btn_open, а затем нажать на любую из других, то reclick tablink.rafters_btn_open я начинаю получать 2,3,4 копии одного содержание. Любой совет ?

ответ

1

попытка добавить класс щелкнул элемент

$('.tablink').on('click',function(){ 
    var Thisit = $(this); 
    if(!Thisit.hasClass('clicked')){ 
     $.get('http://mysite.page2.com', function (data) { 
     $(data).find('#rafters').appendTo('#rafters_btn'); 
     $(data).find('#hof').appendTo('#hof_btn'); 
     $(data).find('#alphacup').appendTo('#alpha_btn'); 
     $(data).find('#postseason').appendTo('#postseason_btn'); 
     $('.tablink').removeClass('clicked'); 
     $(this).addClass('clicked'); 
     }); 
    } 
}); 
+0

это работало для меня, ты, сделает, как ответил – MShack

+0

@MShack Удачи :) –

0

Лучше загружать данные только один раз вместе со страницей:

$(function() 
{ 
    $.get('http://mysite.page2.com', function (data) { 
    $(data).find('#rafters').appendTo('#rafters_btn'); 
    $(data).find('#hof').appendTo('#hof_btn'); 
    $(data).find('#alphacup').appendTo('#alpha_btn'); 
    $(data).find('#postseason').appendTo('#postseason_btn'); 
    }); 
}); 
+0

Я хочу, чтобы избежать загрузки его на странице, если это вообще возможно – MShack

Смежные вопросы