Jquery .show не анимирует должным образом и не захватывает все ссылки в цели - PullRequest
1 голос
/ 13 июля 2011

По сути, я пытаюсь загрузить контент в div, по ссылке внутри этого div.Теперь это работает в определенной степени.Мой код до сих пор извлекает ссылки из целевого div и при щелчке анимирует div «content» и заменяет div «content» в целевой ссылке.

//Target links and call on click
$('#scrollbox li a').click(function(){  
//Define load paramaters
var toLoad = $(this).attr('href')+' #content';  
//Hide content
$('#content').hide('fast',loadContent);
//Remove Load Bar 
$('#load').remove(); 
//Show Load Bar
$('#wrapper').append('<span id="load">LOADING...</span>');  
$('#load').fadeIn('normal');


function loadContent() {  
    $('#content').empty().load(toLoad,'',showNewContent())  
}  
function showNewContent() {  
    $('#content').show('slow',hideLoader());  
}  
function hideLoader() {  
    $('#load').fadeOut('normal');  
}  
return false;  

});  

Первая проблема заключается в том, что после скрытия старого контентапри отображении нового контента анимация прерывистая, а старый контент все еще виден и анимируется до тех пор, пока в последнюю миллисекунду новый контент просто не «вспыхнет». Должно ли старое содержимое скрываться и новое содержимое показывалось?Я попытался исправить это с помощью .empty, но теперь он просто включается, как будто анимации .show вообще не было.

Вторая проблема заключается в том, что единственные ссылки, на которые, похоже, влияет любой мой код, этоссылки заголовка в целевом div, ссылки внутри div 'content' (внутри целевого div) не затрагиваются и перезагружают всю страницу.Нужно ли нацеливать div'ы внутри div'ов?Разве я не нацеливаю ВСЕ ссылки внутри div в моем коде?

Если вам нужно что-то прояснить, пожалуйста, дайте мне знать.

Приветствия и спасибо за помощь.

1 Ответ

0 голосов
/ 13 июля 2011

Fixed.Установите анимацию на 0, чтобы ее не было вообще.(Так что вроде дешевого исправления)

Используется команда .live() для привязки команды ко всем последующим ссылкам при перезагрузке.

$(document).ready(function(){

$('.scroll-pane').jScrollPane({showArrows: true});

$('#scrollbox a').live('click', function() {
//all elements that exist now and elements added later
//with this class have this click event attached

//Define load paramaters
var toLoad = $(this).attr('href')+' #content';  
//Hide content
$('#content').hide(0,loadContent);

function loadContent() {  
    $('#content').load(toLoad,'',showNewContent())  
}  
function showNewContent() {  
    $('#content').fadeIn(0);  
}  

return false;  


});  

});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...