2016-01-06 2 views
9

Моя страница подскакивает к вершине, когда я вставлять этот Gdrive IFRAME, как только вы нажмете на IFRAME:Page подскакивает вверх при IFrame нажатии

<iframe height="400px" frameborder="0" width="600px" src="https://docs.google.com/document/d/1u9NFjTPBd-9mucQUPvkqLP84iV6uaEcJNF5vQdHmYh8/edit?usp=sharing&rm=embedded"></iframe> 

JSFiddle: https://jsfiddle.net/0qpe53os/

Вопрос: Почему это сделайте это и как я могу предотвратить это?

Я пробовал preventDefault без везения. Большое спасибо за вашу помощь.

+0

Mybe это может помочь вам http://stackoverflow.com/questions/26017978/iframe-causes-parent-elements-to-scroll-up-on-google-chrome-when-url-contains-fr – elTomato

+0

См. Здесь : http://stackoverflow.com/questions/26017978/iframe-causes-parent-elements-to-scroll-up-on-google-chrome-when-url-contains-fr – leodido

ответ

-2

Вы можете использовать javascript для проверки того, является ли iframe активным элементом и возвращается к нему, если он активен.

if(document.activeElement.tagName == 'IFRAME') { document.activeElement.scrollIntoView() }

Смотреть это Jsfiddle для рабочего примера.

1

Я не уверен, что это полезно. Кстати, вы можете использовать атрибут onload для прокрутки страницы вниз: onload = "scroll (0, screen.height);"

<iframe height="400px" frameborder="0" width="600px" src="https://docs.google.com/document/d/1u9NFjTPBd-9mucQUPvkqLP84iV6uaEcJNF5vQdHmYh8/edit?usp=sharing&rm=embedded" onload="scroll(0,screen.height);"></iframe> 
0

Из моего расследования, его не вызваны самой IFRAME. Его причиной является javascript, выполняемый встроенными документами google. Когда область редактирования документов google получает фокус, это происходит. Если вы заходите в область меню, ничего не происходит, если только результат не добавляется к области редактирования. Я попытался ограничить iframe атрибутом sandbox, и этого поведения больше не происходит, но, конечно, вы не можете использовать документы google.

Извините, не найдено решений.

Смежные вопросы