Внешняя страница - дать ему инструкции JS? - PullRequest
0 голосов
/ 17 декабря 2010

Я заинтересован в добавлении ссылки на внешнюю страницу и ее прокрутке до определенной точки.Возможно ли это, или кросс-браузерные ценные бумаги предотвращают это?

Один из обходных путей, который я рассмотрел, - это создание iframe внутри div, предоставление iframe отрицательного поля и затем переполнение: hidden;контейнер div.

спасибо.

1 Ответ

1 голос
/ 17 декабря 2010

Возможным решением может быть использование 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 с отрицательным полем" может работать, но его может быть сложно реализовать, и это может вызвать проблемы, особенно если вам нужна полная кросс-браузерная совместимость.

...