2013-12-12 1 views
1

jQuery를 사용하여 페이지의 모든 iFrames에서 스크롤 막대를 제거하려고합니다.iFrames에서 jquery 타이밍 문제가 발생 했습니까?

내가 그 아래의 코드를 사용하고 있습니다 :

$("iframe").each(function() { 
         $(this).css({"overflow":"hidden","scrolling":"no"}); 
        }); 

을 문제는 가끔 페이지를 새로 고침 유지대로 작동한다는 것입니다 때로는 나를 타이밍의 일종이 생각하게하지 않는 여기에서 문제를 제기하십시오. 위의 코드가 실행될 때 아마도 iFrames가로드되지 않았을 것입니까? 아마도 시간 지연을 추가할까요?

코드는 $(document).ready(function() 핸들러 내부에 싸여있다

+0

준비 처리기 안에 코드를 래핑했거나 iframe이 DOM에 추가 된 후에 설정 했습니까? –

+2

은 정적 HTML에 추가 된 iframe이거나 javascript를 사용하여 추가 된 내용입니까? – Enermis

+0

CSS 스크롤 – epascarello

답변

0

을 시도하고 자바 스크립트와 속성 자바 스크립트없이 설정하십시오.

<iframe src="http://url.com" style="overflow:hidden" scrolling="no"></iframe> 

0

은 그래서 당신의 유일한 옵션이며, 전혀 단순히 작동하지 않는 스타일 설정이

$(document).ready(function(){ 
    $("iframe").each(function() { 
     $(this).load(function(){ 
      $(this).css({"overflow":"hidden","scrolling":"no"}); 
     } 
    }); 
}); 

편집을 할

+0

에는 "스크롤링"이 없습니다. 이미 처리기 안에 포장되어 있습니다. – Joly

+0

편집했습니다. 그 중 하나를 시도하십시오. – Rickert

0

문제는 아마 자바 스크립트를 사용하여 iframe의 내용을로드하고있는 것입니다. javascript는 설계 상 단일 스레드이므로 iframe의 내용로드는 나머지 JavaScript가 실행될 때까지 지연됩니다. 당신이 비슷한 질문은 여기에 답하고있다

iframe이 콘텐츠를로드 할 때

당신은 콜백으로 기능을 추가해야 jQuery .ready in a dynamically inserted iframe

+0

의미가 있습니다. 어떻게해야합니까? 예를 들어 주시겠습니까? – Joly

+0

user2348221이 제안한 것이 맞습니다. 자세한 정보는 여기에서 확인할 수 있습니다. http://stackoverflow.com/questions/205087/jquery-ready-in-a-dynamically-inserted-iframe – Enermis

0

왜 모든 jQuery를/자바 스크립트를 사용할 수 있습니까?

간단한 CSS는 동적 경우, 그냥 작동해야 더 걱정, 오프

iframe { 
    overflow: hidden; 
} 

없음 루프를 켤 수 없습니다. 사용하도록 설정해야하는 경우 클래스를 사용하여 다른 규칙을 만들고 스크롤을 켜십시오.

관련 문제