Возможным решением может быть использование JavaScript для прокрутки страницы. Однако, если встраиваемая страница находится в другом домене, вы не можете получить доступ к ее содержимому с помощью JavaScript, если она находится в iframe (из-за той же политики происхождения ). Однако, если он находится в том же домене, что и страница хоста, вы сможете получить к нему доступ с помощью JavaScript, а затем выполнить прокрутку, используя метод window.scrollTo(x,y)
или аналогичный (см. эта страница в MDN ).
Кроме того, если встраиваемая страница имеет именованный якорь (<a name="blah">
) или элемент уровня блока с определенным идентификатором (<div id="blah">
) в точке, к которой вы хотите перейти, вы можете сделать ссылку на нее или вставьте его, используя URL-адрес, такой как http://example.com/page#blah, и он автоматически перейдет к бла. Это не относится к той же политике происхождения, поэтому вы можете сделать что-то вроде <iframe src="http://example.com/page#blah"></iframe>
, и кадр будет автоматически прокручен до blah , даже если он не находится в том же домене, что и хост.
Упомянутое вами решение "iframe с отрицательным полем" может работать, но его может быть сложно реализовать, и это может вызвать проблемы, особенно если вам нужна полная кросс-браузерная совместимость.