2013-03-01 1 views
2

슬라이더가있는 iframe이 있습니다. 슬라이더를 사용하면 왼쪽/오른쪽 화살표로 사진을 탐색 할 수 있지만 페이지에 가로 스크롤이 있으면 왼쪽/오른쪽 화살표로 페이지가 스크롤됩니다. 페이지 스크롤을 방지하는 방법은 없지만 iframe의 슬라이드 간 이동은 금지합니다. 코드는 다음과 같습니다.왼쪽/오른쪽 버튼이 스크롤되는 페이지를 방지합니다.

if (e.keyCode === 39) { 
    next(); 
} 
if (e.keyCode === 37) { 
    prev(); 
} 

감사합니다.

답변

1

의 일종.

+0

이렇게하면 페이지에서 스크롤하는 것과 iframe에서 탐색하는 것을 방지 할 수 있습니다. 그러나 iframe – user1853892

+0

이 아닌 페이지에서만 필요하므로 전혀 이해하지 못했습니다. 이것이하는 일은 브라우저의 기본 동작을 비활성화하는 것입니다. 프레임 스크롤을 만들기 위해 next()와 prev()를 e.preventDefault()와 같은 코드에 추가해야한다. – GottZ

+0

나는 당신이 쓴 것과 똑같이 잘 이해했지만 페이지는 여전히 스크롤되어있다. – user1853892

1

당신이 이벤트의 기본 동작을 종료하기 위해 e.preventDefault();를 적용해야

$(document).on("keypress", function() { 
    if (e.keyCode === 39 || e.keyCode === 37) { 
     return 
    } 
}); 
+0

작동하지 않는 것 같습니다. iframe을 타겟팅하고 별도로 문서화해야합니까? – user1853892

+0

외부 문서에는 $ (document) .on ("keypress") 함수가 필요하고 iframe에 지정한 다른 키 누르기 함수가 필요합니다. 또한 iframe이 집중되어야하므로 keypress가 작동 할 수 있습니다. – Sergio

관련 문제