2014-12-23 1 views
1

나는 다음과 같은 코드를 가지고 :페이지 요소 폭이 새로 가져올 수 없습니다

//get the largest block: if no block, apply to first block 
    var previous = $('.block-grid .block-group .block.block-lg'); 

    var blocks = $('.block-grid .block-group .block'); 

    blocks.last().css({'left': (previous.width() + previous.position().left), 'top': previous.position().top}); 

나는 페이지,이 부분 새로 고침 할 때 : 크기가 previous.width(), 보통이 400을 반환하도록되어 0을 반환을, 가장 큰 블록의 그러나 페이지의 URL로 이동하면 400을 반환합니다. 페이지를 새로 고치면 너비 값이 0으로되는 이유는 무엇입니까? 나는 매우 혼란스럽고 어떤 도움이라도 대단히 감사한다.

+0

페이지 새로 고침 실행을 - 그리고 나는 그렇게 이전을 유지하기 위해, '이전'코드에서 설정 한 가정입니다 상태도, 실행 가능할 경우 하드 코드를 설정하고, 다음 페이지로드시 '이전'을 유지하도록 쿠키를 설정 한 다음, '이전'값을 사용중인 백엔드 언어의 세션에 밀어 넣으십시오. –

답변

1

나는 실제로이 작업을 할 수있었습니다. 아주 간단한 해결책이었습니다. 나는 단순히 $(window).load() 내 솔루션을 포장, 그래서 보인다 : 자바 스크립트의 모든 다시

$(window).load(function(){ 

    //get the largest block: if no block, apply to first block 
    var previous = $('.block-grid .block-group .block.block-lg'); 

    var blocks = $('.block-grid .block-group .block'); 

    blocks.last().css({'left': (previous.width() + previous.position().left), 'top': previous.position().top}); 

});