請參閱我的腳本在這裏:LIVE EXAMPLEjQuery函數 - 難以理解的行爲
有我注意到一個難以理解的行爲。
的Onload 'All'
有3個選項明顯 - 但是當你切換到'logo'
和回'all'
我們有4
爲什麼?第一個標籤中應該有4個項目。
如何進行腳本工作:
- onload事件 - 我已經定義了我們的
var filterClass = "all";
是所有這意味着,只顯示li
與'all'
類。 - 當您選擇一些正面的頂部菜單 - 它正在它的類,並且使用相同的類(「禮」具有多類)
- 上的每一個變化發現
li
我們運行CreateTabs
功能基本上檢查有多少個「禮」我們有,並在製表符(每個選項卡上4)。
的Onload素文字 - 這CONTROLES類:
$('#portfolio-items li').CreateTabs();
var filterClass = "all";
$('.portfolio-filter li a').click(function() {
$('.portfolio-filter > .selected').prop('class', '');
$(this).parent('li').addClass('selected');
filterClass = $(this).attr('class');
$('#portfolio-items li').hide();
$('#portfolio-items li.' + filterClass).show();
$('#portfolio-items').CreateTabs(filterClass);
});
CreateTabs腳本:
(function($) {
$.fn.CreateTabs = function(filterClass) {
var CoundNumberOfDivs = $('#portfolio-items li:visible').length;
$('.pagination li a').hide();
if (CoundNumberOfDivs <= 4) {
return false;
}
else {
var num = Math.ceil(CoundNumberOfDivs/4);
$('.pagination li a:lt(' + num + ')').show();
$('#portfolio-items li').hide();
if (filterClass === undefined) {
$('#portfolio-items li:lt(4)').show();
} else {
$('#portfolio-items li.' + filterClass + ':lt(4)').show();
}
}
};
})(jQuery);
的Onload腳本CONTROLES TABS
$('ul.pagination li a').click(function(event) {
$('ul.pagination li .active').removeClass('active');
$(this).addClass('active');
var PI = $('#portfolio-items li' + (filterClass !== undefined) ? '.' + filterClass : '');
$('#portfolio-items li').hide();
if ($(this).hasClass('href-1')) {
PI.slice(0, 4).show();
}
else if ($(this).hasClass('href-2')) {
PI.slice(4, 8).show();
}
else if ($(this).hasClass('href-3')) {
PI.slice(8, 12).show();
}
else if ($(this).hasClass('href-4')) {
PI.slice(12, 16).show();
}
else if ($(this).hasClass('href-5')) {
PI.slice(16, 20).show();
}
else if ($(this).hasClass('href-6')) {
PI.slice(20, 24).show();
}
else if ($(this).hasClass('href-7')) {
PI.slice(24, 28).show();
}
else if ($(this).hasClass('href-8')) {
PI.slice(28, 32).show();
}
else if ($(this).hasClass('href-9')) {
PI.slice(32, 36).show();
}
event.preventDefault();
}).filter(':first').click();
直播鏈接是一個偉大的*輔助*一個問題,但總是張貼有關代碼*也在問題*中。兩個原因。 1.人們不應該遵循鏈接來幫助你。 2. StackOverflow不僅適用於您,而且適用於將來也有類似問題的其他人。外部鏈接可以被移動,修改,刪除等。通過確保相關代碼在問題中,我們確保問題(及其答案)在合理的時間段內保持有用。 –
如果您轉到徽標頁面2,然後單擊「全部」而不返回到頁面1,則會返回此行爲。 –