Создание этой темы WordPress портфолио в стиле ajax, и я немного застрял в том, как сделать эту последнюю маленькую вещь.
В основном, скажем, вы нажимаете ссылку "О программе" в правом верхнем углу, она будет загружатьсясодержимое этой страницы в div.Теперь, когда щелкнул тот, как мне указать, что, если эту ссылку снова щелкнуть, чтобы она не загружала содержимое снова?
Теперь вы подумаете о том, чтобы использовать длину, но это не проблема.
Вот ссылка на текущую тему http://themes.thefinishedbox.com/portfolio/
Вот javascript, используемый для верхней навигации:
$(function() {
$('#navigation ul > li a').each(function() {
$(this).click(function(e) {
$.ajaxSetup ({
cache: false
});
e.preventDefault();
var $href = $(this).attr('href');
var $loader = '<div id="whiteLoader" />';
if($('#page').length == 0) {
$('<div id="page" />').insertAfter('#header');
$('#page').queue(function() {
$(this).animate({height: '120px'}, 300);
$(this).html($loader);
$(this).animate({backgroundColor: '#fff'}, 300);
$(this).dequeue();
});
$('#page').queue(function() {
$('#page').load($href + ' #pageEntry', function() {
var $height = $('#pageEntry').height();
var $h = $height + 16;
$(this).animate({height: $h + 'px'}, 600, function() {
$(this).css({height: 'auto'});
});
// This is the sort of thing I'm trying to achieve
// is it out of scope? Not sure of the correct way
// to achieve this.
e.click(function() { return false; });
});
$(this).dequeue();
});
} else {
$('#pageEntry').animate({height: 0}, 600, function() {
$(this).remove();
$('#page').queue(function() {
$(this).animate({height: '120px'}, 300);
$(this).html($loader);
$(this).animate({backgroundColor: '#fff'}, 300);
$(this).dequeue();
});
$('#page').queue(function() {
$('#page').load($href + ' #pageEntry', function() {
var $height = $('#pageEntry').height();
var $h = $height + 16;
$(this).animate({height: $h + 'px'}, 600, function() {
$(this).css({height: 'auto'});
});
});
$(this).dequeue();
});
});
}
});
});
});
Не беспокойтесь о выражении else прямо сейчас, см.к комментарию, я делаю это правильно?Вне сферы?Конечно, кто-то сталкивался с этой проблемой раньше.
Любая помощь будет принята с благодарностью.
ps Я знаю, что многие код может быть уменьшен, я сделаю это позже.