0
私は問題を引き起こしているページのタブを持っています。私はそれがjsコード内にあると思う。場合によってはタブをダブルクリックしなければならないこともあります。タブをダブルクリックしてタブの内容を取得する必要があります
これはRailsでHAMLを使用していますが、これはあまりよく知られていません。私は元のコードも書きませんでした。私はプロジェクトを引き継いでいます。ここで
はコードです: HAML
#myTabs
%ul.tab-buttons.tab-buttons--boxed.tab-buttons--left.js-tabs.nav-tabs
%li.active.tab-button
%a#tab1.tab-button-link.active{"data-toggle" => "tab", "data-projects" => "not_archived"} Current Projects
%li.tab-button
%a#tab2.tab-button-link{"data-toggle" => "tab", "data-projects" => "archived"} Archived Projects
.tab-content
#tab1C.container
%ul.list-project
= render @projects
#tab2C.container
%ul.list-project
JS
$('.js-tabs li a:not(:first)').addClass('inactive');
$('.container').hide();
$('.container:first').show();
$('.js-tabs li a').click(function(){
var that = this;
var t = $(that).attr('id');
$.get("/projects", {projects: $(that).data("projects")}, function(){},'json')
.done(function(data){
var projects = data.projects;
if($(that).hasClass('inactive')){
$(that).removeClass('inactive');
$(that).addClass('active');
$('#'+t+'C .list-project').html(projects);
$('.container').hide();
$('#'+ t + 'C').fadeIn('slow');
} else {
$(that).removeClass('active');
$(that).addClass('inactive');
$('#'+t+'C .list-project').html(projects);
$('.container').hide();
$('#'+ t + 'C').fadein('slow');
};
$('.open-popup-link').magnificPopup(magnificPopupOptionsPermissionEmail);
})
});
私はcodepenでコードを表示しようとしたが、それは正確に表示されていません。 Codepen
残念ながら、ページロードだけではありません。 1回のクリックでタブが表示され、2回目のクリックでコンテンツが表示されるように見えます。 – LaFrish
いくつかのブラウザでもう1つ問題があったのは、コンテンツを同時に読み込もうとすると、時にはうまくいきません。私は時々、すべてが正しく動くように10ミリ秒の遅延を加えなければならなかった。詳細はこちらをご覧ください:http://stackoverflow.com/questions/17883692/how-to-set-time-delay-in-javascript – Okomikeruko